news 2026/4/3 3:09:36

最小覆盖子串

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
最小覆盖子串

题目链接:

76. 最小覆盖子串 - 力扣(LeetCode)

思路:

1. 采用贪心算法,我们用 i 表示 当前 s 串中走到的位置,left 到 i 表示满足 s 串中含有 t 串 的 距离。

2. 我们需要维护 left 到 i 这块的 字符串,从中不断计算 迭代,如果 当前依旧满足,则 left 往左边缩进,直到不满足,我们继续贪心的往右边走,直到满足 覆盖 t 串的条件,然后继续 试探 left 的极限值在哪里

3. 用 map 这个容器来判断 是否 满足条件

代码:

/** * @param {string} s * @param {string} t * @return {string} */ var minWindow = function (s, t) { let res = "", mapS = new Map(), mapT = new Map(); function check() { for (let [key, value] of mapT) { if (!mapS.get(key)) return false if (value > mapS.get(key)) return false } return true } if (s.length < t.length) return "" for (let i = 0; i < t.length; i++) { mapT.set(t[i], mapT.get(t[i]) ? mapT.get(t[i]) + 1 : 1) } let left = 0; for (let i = 0; i < s.length; i++) { mapS.set(s[i], mapS.get(s[i]) ? mapS.get(s[i]) + 1 : 1) while (left <= i && check()) { if (res.length === 0 || (res.length > (i - left + 1))) res = s.substring(left, i + 1) // 向左缩进 mapS.set(s[left], mapS.get(s[left]) - 1) left++ } } return res; };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/14 4:00:42

【Open-AutoGLM网页版使用全攻略】:掌握AI自动编程的5大核心技巧

第一章&#xff1a;Open-AutoGLM网页版入门与核心价值Open-AutoGLM 是一款基于 GLM 大模型的自动化网页应用开发平台&#xff0c;专为开发者和非技术用户设计&#xff0c;提供直观的图形界面与强大的自然语言处理能力。通过简单的文本输入&#xff0c;用户即可生成功能完整的网…

作者头像 李华
网站建设 2026/3/31 6:00:06

Open-AutoGLM在Win环境部署成功率提升300%的秘密配置方案

第一章&#xff1a;Open-AutoGLM在Win环境部署的核心挑战在Windows环境下部署Open-AutoGLM模型面临诸多技术性障碍&#xff0c;主要源于其对Linux优先的开发适配、依赖库兼容性差异以及GPU驱动支持的复杂性。这些因素共同导致本地化部署流程变得异常繁琐&#xff0c;尤其对于缺…

作者头像 李华
网站建设 2026/3/25 16:51:18

【独家】Open-AutoGLM架构深度剖析:来自20年AI专家的6层技术解读

第一章&#xff1a;Open-AutoGLM架构全景概览Open-AutoGLM 是一个面向自动化自然语言理解与生成任务的开源大模型架构&#xff0c;融合了图神经网络&#xff08;GNN&#xff09;与广义语言模型&#xff08;GLM&#xff09;的优势&#xff0c;旨在实现跨模态、多任务的智能推理能…

作者头像 李华