📅  最后修改于: 2023-12-03 15:37:36.334000             🧑  作者: Mango
在 Java 中,计算字符串中重复字符的数量并不是一项非常困难的任务,但是需要采取特定的算法和数据结构来实现。
我们可以通过遍历字符串并使用一个 HashMap 来计算字符的出现次数来实现这个算法。具体来说,算法如下:
import java.util.HashMap;
import java.util.Map;
public class Main {
public static void main(String[] args) {
String str = "hello world";
Map<Character, Integer> charCountMap = new HashMap<>();
for (int i = 0; i < str.length(); i++) {
char ch = str.charAt(i);
if (charCountMap.containsKey(ch)) {
charCountMap.put(ch, charCountMap.get(ch) + 1);
} else {
charCountMap.put(ch, 1);
}
}
System.out.println("重复字符:");
for (Map.Entry<Character, Integer> entry : charCountMap.entrySet()) {
if(entry.getValue() > 1){
System.out.println("'" + entry.getKey() + "'出现了"+ entry.getValue()+"次");
}
}
}
}
这段代码会输出字符串 hello world
中出现重复的字符及其出现的次数。可以通过修改 str
变量的值来计算其他字符串中的重复字符。
本文介绍了在 Java 中计算字符串中重复字符的算法和代码实现。使用 HashMap 是一种通用的方法,它能够在 O(n) 的时间复杂度内完成计算,其中 n 是字符串的长度。这种方法不仅简单易懂,而且也非常高效。