package test;
import java.util.HashMap;
import java.util.Map;
/**
* 求出现次数最大的连续3个字符
*
* @author liyulin
* @version 1.0 2013-9-25 下午11:50:33
*/
public class CalculateStringNum {
public static void main(String[] args) {
String str = "aaabbbaaabbbcccaaabbbcccsssddass";
Map<String, Integer> map = new HashMap<String, Integer>();// 存储每3个字符的个数
int size = str.length();
for (int i = 0; i < size - 2; i++) {
String str1 = str.substring(i, i + 3);// 3个字符
int num = 0;
for (int j = 0; j < size - 2; j++) {
String str2 = str.substring(j, j + 3);// 3个字符
if (str1.equals(str2)) {
num++;
}
}
map.put(str1, num);
}
// 求最大次数
int max = 0;
for (Map.Entry<String, Integer> entry : map.entrySet()) {
System.out.println(entry);// 打印所有的连续3个字符的次数
if (entry.getValue() > max) {
max = entry.getValue();
}
}
System.out.println("================================================");
// 打印出次数最大的字符串及次数
for (Map.Entry<String, Integer> entry : map.entrySet()) {
if (entry.getValue() == max) {
System.out.println(entry);
}
}
}
}
求出现次数最大的连续3个字符
最新推荐文章于 2021-05-29 21:56:50 发布
本文介绍了一种Java实现的方法,用于找出给定字符串中出现次数最多的连续三个字符及其出现频率。通过使用HashMap来存储所有可能的连续三个字符及其对应的出现次数,并最终找到出现频率最高的字符组合。
52

被折叠的 条评论
为什么被折叠?



