解题思路:
注意事项:
参考代码:import java.util.*;
public class qqqq {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String nums=sc.nextLine();
String [] num=nums.split("");
//Map对象用于统计字母出现的次数
Map<String ,Integer> wordcount=new HashMap<>();//HashMap具有快速的插入和查找性能
for(String word: num){
//获取当前wordcount包含指定的键
if(wordcount.containsKey(word)){
//// 如果字母已经在 Map 中存在,则将其出现次数加1
wordcount.put(word,wordcount.get(word)+1);
}else{//// 否则,将字母添加到 Map 中,并将其出现次数设置为1
wordcount.put(word,1);
}
}
//List对向用于储存出现次数最多的字母
List<String> maxwordcount=new ArrayList<>();
int maxcount=0;//储存出现次数的最大值
for(String word: wordcount.keySet()){//wordcount.keySet()用于获取一个包含 wordcount Map 中所有键的集合。
//将指定字母 word 的出现次数赋值给变量 count
int count =wordcount.get(word);
// 如果当前字母的出现次数大于最大次数,更新最大次数并清空 maxwordcount
if(count>maxcount){
maxcount=count;
//清空列表maxwordcount列表,可以在后续的查找出现次数最多的字母的过程中重新将新的结果添加到 maxwordcount 列表中。
maxwordcount.clear();
//指定的字母 word 添加到 maxwordcount 列表中
maxwordcount.add(word);
}else if(count==maxcount){
// 如果当前字母的出现次数与最大次数相等,则将其加入到 maxwordcount 中
maxwordcount.add(word);
}
}
//Collections.sort()方法是对指定集合进行升序排序
Collections.sort(maxwordcount);
for (String word:maxwordcount) {
System.out.print(word);
}
}
0.0分
0 人评分
C语言考试练习题_保留字母 (C语言代码)浏览:575 |
【回文数(二)】 (C语言代码)浏览:856 |
C语言考试练习题_一元二次方程 (C语言代码)浏览:737 |
简单的a+b (C语言代码)浏览:548 |
【回文数(二)】 (C语言代码)浏览:731 |
C语言训练-求函数值 (C语言代码)浏览:580 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:462 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:2092 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:588 |
C语言程序设计教程(第三版)课后习题12.2 (C语言代码)浏览:767 |