Leetcode—76. 最小覆盖子串【困难】

2024每日刷题(167)

Leetcode---76. 最小覆盖子串

C++实现代码

cpp 复制代码
class Solution {
public:
    string minWindow(string s, string t) {
        int bestL = -1;
        int l = 0, r = 0;
        vector<int> cnt(128);
        for(const char c: t) {
            cnt[c]++;
        }
        int require = t.length();

        int minLen = s.length() + 1;
        for(; r < s.length(); r++) {
            if(--cnt[s[r]] >= 0) {
                --require;
            }
            while(require == 0) {
                if(r - l + 1 < minLen) {
                    bestL = l;
                    minLen = r - l + 1;
                }
                if(++cnt[s[l++]] > 0) {
                    ++require;
                }
            }
        }
        return bestL == -1 ? "": s.substr(bestL, minLen);
    }
};

运行结果

之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!

相关推荐
数据皮皮侠19 小时前
1095 《中国城市统计年鉴》面板数据整理
大数据·数据库·人工智能·算法·制造
寒月小酒19 小时前
3.26 OJ
数据结构·算法
福楠19 小时前
现代C++ | 智能指针
c语言·开发语言·c++
汉克老师19 小时前
GESP5级C++考试语法知识(十二、递归算法(二))
c++·算法·记忆化搜索·时间复杂度·递归算法·gesp5级·gesp五级
lcreek19 小时前
计算机网络与图算法:从理论到实践
算法·
旺仔.29119 小时前
顺序容器:Array 数组 详解
c++
sinat_2554878119 小时前
JSON·学习笔记
java·开发语言·笔记·算法
Yupureki19 小时前
《算法竞赛从入门到国奖》算法基础:动态规划-基础线性dp
c语言·开发语言·算法·动态规划
qq_3928079519 小时前
Qt 注册 C++ 给 QML 调用的几种方式
数据库·c++·qt
Roselind_Yi19 小时前
从线性回归实战到Python依赖安装踩坑:我的机器学习入门排雷记
笔记·python·算法·机器学习·回归·线性回归·学习方法