最小覆盖子串

class Solution {

public:

unordered_map<char, int> mp1;

unordered_map<char, int> mp2;

bool check() {

for (auto& c : mp1) {

if (c.second > mp2[c.first])

return false;

}

return true;

}

string minWindow(string s, string t) {

int n = s.size(), m = t.size();

int res = INT_MAX;

int l = 0, r = 0;

for (auto& e : t)

mp1[e]++;

int start = -1;

while (r < n) {

if (mp1.find(s[r]) != mp1.end())

mp2[s[r]]++;

while (check() && l <= r) {

if (r - l + 1 < res) {

start = l;

res = r - l + 1;

}

if (mp1.find(s[l]) != mp1.end())

mp2[s[l]]--;

++l;

}

++r;

}

return start == -1 ? "" : s.substr(start, res);

}

};

相关推荐
汀、人工智能7 分钟前
[特殊字符] 第2课:字母异位词分组
数据结构·算法·链表·数据库架构··字母异位词分组
小O的算法实验室40 分钟前
2026年SEVC,面向主动成像卫星任务规划问题的群体智能与动态规划混合框架,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
网安INF1 小时前
数据结构第一章复习:基本概念与算法复杂度分析
数据结构·算法
幻风_huanfeng1 小时前
人工智能之数学基础:什么是凸优化问题?
人工智能·算法·机器学习·凸优化
三雷科技1 小时前
使用 `dlopen` 动态加载 `.so` 文件
开发语言·c++·算法
Yzzz-F2 小时前
Problem - 2146D1 - Codeforces &&Problem - D2 - Codeforces
算法
Kk.08022 小时前
力扣 LCR 084.全排列||
算法·leetcode·职场和发展
环黄金线HHJX.2 小时前
龙虾钳足启发的AI集群语言交互新范式
开发语言·人工智能·算法·编辑器·交互
Omics Pro2 小时前
虚拟细胞:开启HIV/AIDS治疗新纪元的关键?
大数据·数据库·人工智能·深度学习·算法·机器学习·计算机视觉
旖-旎2 小时前
分治(快速选择算法)(3)
c++·算法·leetcode·排序算法·快速选择