两学一做夜校网站运维管理平台

张小明 2026/1/9 12:16:17
两学一做夜校网站,运维管理平台,网站扁平结构,网站建设运营规划题目#xff1a;解一#xff1a;获取两个字符串#xff0c;设置两个整型的计“值”器#xff0c;将两个字符串转成对应的字符数组#xff0c;for循坏分别遍历两个字符数组#xff0c;将数组中元素对应的ASCII码值赋给计“值”器#xff0c;这样就通过两个计“值”器进行…题目解一获取两个字符串设置两个整型的计“值”器将两个字符串转成对应的字符数组for循坏分别遍历两个字符数组将数组中元素对应的ASCII码值赋给计“值”器这样就通过两个计“值”器进行做差取绝对值abs方法再转成字符型就能得出最后的结果。注个人感觉这种解法确实是非常快捷、高效。但此解法只适用与一个字符不同如果是多个不同如ac与bb的话这两个的ASCII码值也相同所以可能导致最后结果出错。不管怎么说这种思路还是非常值得学习。import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan new Scanner(System.in); String str1 scan.next(); String str2 scan.next(); int sum1 0; int sum2 0; char[] chars1 str1.toCharArray(); char[] chars2 str2.toCharArray(); for (int i 0; i chars1.length; i) { sum1 chars1[i]; } for (int i 0; i chars2.length; i) { sum2 chars2[i]; } System.out.println((char)(Math.abs(sum1 - sum2))); scan.close(); } }解二该代码利用异或运算的特性核心原理异或运算的“同归于尽”的特性。规则1、相同数值异或结果为0比如8^80、a^a02、数值与0异或结果为自身比如0^88、0^aa3、异或满足交换律和结合律顺序不影响最终结果。因此若一个字符出现偶数次异或后会相互抵消结果为 0只有出现奇数次的字符最终会保留在结果中。该代码中读取输入的两个字符串合并后所有字符中只有 1 个字符出现奇数次找出这个唯一出现奇数次的字符并将其输出。import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc new Scanner(System.in); String st sc.next(); String st2 st sc.next(); int temp 0; for (int i 0; i st2.length(); i) { temp temp ^ st2.charAt(i); } System.out.println((char)temp); } }解三获取两个字符串并转成字符数组分别将字符数组的元素递给hashmap判断哪个map的长度更短方便调用viewDiff函数。在viewDiff函数里进行判断如果map2里不包含map1里的元素或map2的元素的次数不等于map1该元素的次数则输出该字符。import java.util.*; public class Main { public static void main(String[] args) { Scanner scanner new Scanner(System.in); MapCharacter, Integer map new HashMap(); MapCharacter, Integer map2 new HashMap(); char[] arr scanner.next().toCharArray(); char[] arr2 scanner.next().toCharArray(); for (int i 0; i arr.length; i) { char a arr[i]; map.put(a, map.getOrDefault(a, 0) 1); } for (int i 0; i arr2.length; i) { char a arr2[i]; map2.put(a, map2.getOrDefault(a, 0) 1); } if (map2.size() map.size()) { viewDiff(map,map2); } else { viewDiff(map2,map); } } /** * 识别差异字符串 * param map1 长字符串 * param map2 短字符串 */ private static void viewDiff(MapCharacter,Integer map1,MapCharacter,Integer map2){ for (Map.EntryCharacter, Integer entry : map1.entrySet()) { char a entry.getKey(); Integer aValue entry.getValue(); if (!map2.containsKey(a) || map2.get(a) ! aValue) { System.out.println(a); return; } } } }解四获取两个字符串如果str比str1长度长则交换两者确保str是较短的字符串。双重循坏遍历较长字符串的每个字符与较短字符串的每个字符进行对比若字符相同将两个数组中对应的位置标记为0表示重复。最后遍历较长字符数组因为重复的元素对应的已经标为0数组中不为0的则意味着该字符是不同的将其输出。import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc new Scanner(System.in); String str sc.next(); String str1 sc.next(); if (str.length()str1.length()) { String temp str; str str1; str1 temp; } char[] c1 str1.toCharArray(); char[] c str.toCharArray(); for (int i 0; i c1.length; i) { for (int j 0; j c.length; j) { if (c1[i] c[j]) { c1[i]0; c [j]0; } } } for (int i 0; i c1.length; i) { if (c1[i]!0) { System.out.println(c1[i]); } } sc.close(); } }解五获取两个字符串将str1变成较长的字符串。调用xc函数。在xc函数中将字符串存到对应的map中对比两个map中相同键的数值差异将map中“独有的键”或“键对应的数值多于map2的部分”拼接成字符串ss是s1中去除与s2相同字符后剩余的部分最后返回s打印输出。import java.util.*; public class Main { public static void main(String[] args) { Scanner scanner new Scanner(System.in); String str1scanner.nextLine(); String str2scanner.nextLine(); if(str1.length()str2.length()) { String t str1; str1str2; str2t; } System.out.println(xc(str1, str2)); } public static String xc(String str1,String str2) { String s; MapCharacter, Integer map new HashMap(); MapCharacter, Integer map2 new HashMap(); for(int i0;istr1.length();i) { if(map.containsKey(str1.charAt(i))) { map.put(str1.charAt(i), map.get(str1.charAt(i))1); }else { map.put(str1.charAt(i), 1); } } for(int i0;istr2.length();i) { if(map2.containsKey(str2.charAt(i))) { map2.put(str2.charAt(i), map2.get(str2.charAt(i))1); }else { map2.put(str2.charAt(i), 1); } } Set keySet map.keySet(); Iterator it keySet.iterator(); while (it.hasNext()) { Object keyit.next(); Integer valueObjectmap.get(key); if(map2.get(key)null) { while((valueObject--)0) { sskey; } }else { Integer valueObject2map2.get(key); int avalueObject-valueObject2; while((a--)0) { sskey; } } } return s; } }解六获取字符串将t字符串变成较长字符串设立一个长度为26的数组遍历s字符串将各元素减去‘a’的ASCII码值作为下标存到数组中并加一操作遍历t字符串先将对应元素减去‘a’的ASCII码值下标对应的值加一判断是否小于0是的话则该下标对应的原字符则为不同的字符打印输出。import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc new Scanner(System.in); String s sc.next(); String t sc.next(); int[] count new int[26]; if (s.length() t.length()) { String temp s; s t; t temp; } for (int i 0; i s.length(); i) { count[s.charAt(i) - a]; } for (int j 0; j t.length(); j) { if (--count[t.charAt(j) - a] 0) { System.out.println(t.charAt(j)); break; } } } }解七自己的解法获取字符串将字符串内容存到各自的map中创建一个arraylist动态数组增强for循坏遍历hashmap1如果map2中有map1对应的字符且次数相同则将该字符存到动态数组中for循坏删除map1和map2中该字符的“键”。最后判断哪个map长度为1将不同的字符打印输出。import java.util.*; public class Main { public static void main(String[] args) { Scanner scan new Scanner(System.in); Scanner scanner new Scanner(System.in);//从键盘输入两个字符串 String x1 scanner.nextLine(); String x2 scanner.nextLine(); HashMapCharacter,Integer hashMap1 new HashMap();//创立两个hashmap存放 HashMapCharacter,Integer hashMap2 new HashMap(); //具体存入 for (int i 0;ix1.length();i){ char a x1.charAt(i); if (hashMap1.containsKey(a)){ hashMap1.put(a,hashMap1.get(a)1); }else { hashMap1.put(a,1); } } for (int j 0;jx2.length();j){ char b x2.charAt(j); if (hashMap2.containsKey(b)){ hashMap2.put(b,hashMap2.get(b)1); }else { hashMap2.put(b,1); } } SetMap.EntryCharacter,Integer entrySet hashMap1.entrySet(); ArrayListCharacter arrayList new ArrayList();//创建一个arraylist动态数组用于存放相同的字符 for (Map.EntryCharacter,Integer entry:entrySet){//增强for循坏遍历hashmap1 if (hashMap2.containsKey(entry.getKey()) hashMap2.get(entry.getKey()) entry.getValue()){//如果字符串2有1中的字符且次数相同 arrayList.add(entry.getKey());//则将对应的字符存到arraylist中 } } for (Character x:arrayList){//增强for循坏删除hashmap1、2中相同的字符 hashMap1.remove(x); hashMap2.remove(x); } //判断哪个里有多余的字符打印输出 if (hashMap1.size()1){ for (Character key:hashMap1.keySet()){ System.out.println(key); } } else if (hashMap2.size()1){ for (Character key:hashMap2.keySet()){ System.out.println(key); } } scan.close(); } }
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站开发测量像素工具直通车关键词优化口诀

欢迎使用我的小程序👇👇👇👇 俱好用助手功能介绍 从家族遗传说起:什么是原型链? 想象一下,你的家族有个传家宝技能——所有家族成员都会弹吉他。你不用特意学习,天生就会&#xff…

张小明 2026/1/2 12:19:38 网站建设

网站建设运营公众号运营合同wordpress 笔记本主题下载失败

用 lvgl界面编辑器打造多房间智能家居控制面板:从零开始的实战指南 你有没有遇到过这样的情况?花了一周时间写代码,结果UI效果还不如手机App十年前的水平。按钮对不齐、字体糊成一片、切换页面卡得像幻灯片——这几乎是每个嵌入式开发者在做…

张小明 2026/1/3 21:09:41 网站建设

农业建设公司网站深圳企业专业网站建设

前言:并发之痛在多线程开发的领域,我们常被“可见性”、“原子性”、“有序性”这三座大山压得喘不过气。你是否思考过:为什么 volatile 能保证可见性却不能保证原子性?为什么 i 在多线程下一定会出错?硬件层面的 CPU …

张小明 2026/1/3 20:04:34 网站建设

凉山州规划和建设局网站著名室内设计网站大全

在免疫系统的复杂调控网络中,白细胞介素-2(IL-2)无疑是核心枢纽之一。自1976年被发现并命名为“T细胞生长因子”以来,IL-2凭借其既能驱动免疫攻击、又能维持免疫耐受的“双面性”,成为连接基础免疫学与临床治疗的关键分…

张小明 2026/1/4 2:35:58 网站建设

网站icp备案咋做友情链接平台站长资源

深入探究openSUSE Linux系统的性能调优与问题解决 1. 系统监控与初步操作 首先,登录运行GNOME的openSUSE Linux机器。在终端中输入 gnome-system-monitor 并按下回车键,随后花费几分钟时间查看各个选项卡,尤其关注每个进程所使用的内存量。完成后,关闭终端窗口并关闭虚…

张小明 2026/1/3 19:01:14 网站建设

手机网站开发库企业信用等级查询系统

你是否经常在地铁、飞机或偏远地区需要阅读外文资料却苦于网络问题?kiss-translator作为一款强大的开源离线翻译工具,提供了多种断网翻译解决方案,让你在任何环境下都能轻松阅读外文内容。 【免费下载链接】kiss-translator A simple, open s…

张小明 2026/1/3 13:54:23 网站建设