LeetCode 1446.连续字符

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

请你返回字符串 s 的 能量。

示例 1:

输入:s = "leetcode"

输出:2

解释:子字符串 "ee" 长度为 2 ,只包含字符 'e' 。

示例 2:

输入:s = "abbcccddddeeeeedcba"

输出:5

解释:子字符串 "eeeee" 长度为 5 ,只包含字符 'e' 。

提示:

1 <= s.length <= 500

s 只包含小写英文字母。

分组循环,找最长连续的那组:

cpp 复制代码
class Solution {
public:
    int maxPower(string s) {
        int ans = 0;

        int n = s.size();

        int i = 0;

        while (i < n) {
            int start = i;
            // 计数连续组的长度
            while (i < n && s[i] == s[start]) {
                ++i;
            }

            ans = max(ans, i - start);
        }

        return ans;
    }
};

如果s的长度为n,则此算法时间复杂度为O(n),空间复杂度为O(1)。

相关推荐
胡小禾2 小时前
JDK17和JDK8的 G1
jvm·算法
胖咕噜的稞达鸭4 小时前
算法入门:专题攻克一---双指针(3)有效三角形的个数 查找总价格为目标值的两个商品(剑指offer题目)
算法
逻辑留白陈8 小时前
Adaboost进阶:与主流集成算法对比+工业级案例+未来方向
算法
Learn Beyond Limits8 小时前
Mean Normalization|均值归一化
人工智能·神经网络·算法·机器学习·均值算法·ai·吴恩达
天选之女wow9 小时前
【代码随想录算法训练营——Day28】贪心算法——134.加油站、135.分发糖果、860.柠檬水找零、406.根据身高重建队列
算法·leetcode·贪心算法
Gohldg9 小时前
C++算法·贪心例题讲解
c++·数学·算法·贪心算法
远远远远子9 小时前
类与对象 --1
开发语言·c++·算法
Aaplloo9 小时前
【无标题】
人工智能·算法·机器学习
西望云天9 小时前
The 2024 ICPC Asia Nanjing Regional Contest(2024南京区域赛EJKBG)
数据结构·算法·icpc
10岁的博客9 小时前
容器化安装新玩法
算法