使用Java完成:给定一个只包含大写字母的字符串S,请你输出其中出现次数最多的字母。如果有多个字母均出现了最多次,按字母表顺序依次输出所有这些字母。输入一个只包含大写字母的字符串S。输出若干个大写字母,代表答案,样例输...
时间: 2024-04-30 08:21:58 浏览: 87
可以使用一个HashMap来记录每个字母出现的次数,然后遍历HashMap找到出现次数最多的字母。如果有多个字母出现次数相同,则可以将它们放到一个列表中,最后按字母表顺序输出这个列表。
下面是Java代码实现:
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
Map<Character, Integer> map = new HashMap<>();
int maxCount = 0;
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
int count = map.getOrDefault(c, 0) + 1;
map.put(c, count);
maxCount = Math.max(maxCount, count);
}
List<Character> list = new ArrayList<>();
for (Map.Entry<Character, Integer> entry : map.entrySet()) {
if (entry.getValue() == maxCount) {
list.add(entry.getKey());
}
}
Collections.sort(list);
for (char c : list) {
System.out.print(c);
}
}
}
```
输入样例:
```
ABCAABBCCC
```
输出样例:
```
C
```
阅读全文