class Solution {
public int maxPower(String s) {
int num = 1, sum = 1;
for(int i = s.length()-1 ;i >0; i--) {
char c = s.charAt(i);
if(c == s.charAt(i - 1)) {
num++;
}else {
num = 1;
}
if(sum < num){
sum = num;
}
}
return sum;
}
}
执行用时:1 ms, 在所有 Java 提交中击败了100.00%的用户
内存消耗:38.3 MB, 在所有 Java 提交中击败了23.76%的用户
解析如下:
本题的难点在于 例如 “abbcccddddeeeee”, 仅仅判断所有相同的字符是不够的,因为随着i 的++, 也会存在b = b,c = c,导致num++, 所以要及时将 num重置为1,并且及时更新sum的大小。