【发布时间】:2013-11-03 23:10:05
【问题描述】:
给定一个字符串,例如取“TUOPPPPJHHTT” 我们希望找出字符串中连续出现的次数最多的字符以及出现次数。 在这种情况下,它的 P 出现了 4 次。
我尝试如下运行for循环
char[] array = S.toCharArray();
int count=1;
for(int i =1; i < S.length(); i++) {
if(array[i] == array[i-1]) {
count++;
}
}
但在这种方法中,问题是它会计算所有字母的重复出现次数。
【问题讨论】:
-
"any ideas?"-- 一方面,更好地缩进和格式化您的代码,使其易于阅读。另一方面,考虑使用一个包含 26 个项目的数组,每个字母一个,并在相关插槽中设置最大连续计数。另一种选择是使用HashMap<Character, Integer>。 -
思路:首先找到所有重复的字符序列,然后寻找你找到的最大的。
-
你会把大写和小写算作同一个字母吗?
-
不,@keepcalmandcarryon