leetcode每日一题 1446.连续字符

【简单题】

给了我自信哈哈

给你一个字符串 s ,字符串的「能量」定义为:只包含一种字符的最长非空子字符串的长度。

请你返回字符串的能量。

 

示例 1:

输入:s = "leetcode"
输出:2
解释:子字符串 "ee" 长度为 2 ,只包含字符 'e' 。
示例 2:

输入:s = "abbcccddddeeeeedcba"
输出:5
解释:子字符串 "eeeee" 长度为 5 ,只包含字符 'e' 。

这题一眼就看出可以用双指针解决

思路:两个指针i,j初始分别指向第零个位置和第一个位置,如果对应元素相等就把count++,不等就把count置0

class Solution {
    public int maxPower(String s) {

        //base case
        if (s.length()==1) {
            return 1;
        }
        int i = 0 , j = 1;
        int count = 1;
        int max = 0;
        while(j < s.length()) {
            if (s.charAt(i)==(s.charAt(j))) {
                count++;   
            } else {
                count = 1;
            }
            max = Math.max(count, max);
            i++;
            j++;
        }
        return max;
    }
}

 

posted @ 2021-12-01 09:44  aligado~  阅读(38)  评论(0)    收藏  举报
/* 看板娘 */