当前位置: 首页 > wzjs >正文

洛阳霞光做网站的公司下载百度app最新版

洛阳霞光做网站的公司,下载百度app最新版,大连软件公司有哪些,深圳 网站建设公司如题:给定两个字符串 s 和 t 。返回 s 中包含 t 的所有字符的最短子字符串。如果 s 中不存在符合条件的子字符串,则返回空字符串 “” 。如果 s 中存在多个符合条件的子字符串,返回任意一个。 滑动窗口方案: var minWindow fun…

如题:给定两个字符串 s 和 t 。返回 s 中包含 t 的所有字符的最短子字符串。如果 s 中不存在符合条件的子字符串,则返回空字符串 “” 。如果 s 中存在多个符合条件的子字符串,返回任意一个。

滑动窗口方案:

var minWindow = function (s, t) {if (!s || !s.length || !t || !t.length) return "";const len1 = t.length,len2 = s.length;const rObj = {};for (const c of t) {rObj[c] = (rObj[c] || 0) + 1;}let required = len1;let minStr = "";let minLen = Number.MAX_VALUE;let left = 0;for (let i = 0; i < len2; i++) {const cur = s[i];if (rObj[cur] !== void 0) {if (rObj[cur]-- > 0) required--;}while (left < i && (rObj[s[left]] === void 0 || rObj[s[left]] < 0)) {if (rObj[s[left]] < 0) rObj[s[left]]++;left++;}const len = i - left + 1;if (required == 0) {if (len < minLen) {minStr = s.slice(left, i + 1);minLen = len;}const leftChar = s[left++];if (rObj[leftChar] != void 0) {rObj[leftChar]++;required++;}}}return minStr;
};

优化:
使用更直观的变量名
优化滑动窗口收缩逻辑
简化条件判断
修复边界情况处理
使用现代 JavaScript 语法

var minWindow = function (s, t) {if (!s.length || !t.length) return "";const required = new Map(); // 需要匹配的字符计数for (const c of t) {required.set(c, (required.get(c) || 0) + 1);}let needCount = t.length; // 需要匹配的总字符数let minStr = ""; // 最小窗口字符串let minLen = Infinity; // 最小窗口长度let left = 0; // 滑动窗口左边界for (let right = 0; right < s.length; right++) {const char = s[right];// 处理当前字符if (required.has(char)) {const count = required.get(char);if (count > 0) needCount--; // 当字符仍有需求时才减少needCountrequired.set(char, count - 1);}// 当窗口满足条件时,尝试收缩左边界while (needCount === 0) {const currentLen = right - left + 1;// 更新最小窗口if (currentLen < minLen) {minLen = currentLen;minStr = s.slice(left, right + 1);}// 移动左边界并恢复状态const leftChar = s[left];if (required.has(leftChar)) {required.set(leftChar, required.get(leftChar) + 1);if (required.get(leftChar) > 0) needCount++;}left++;console.log('left,right==>', left,right);}}return minLen === Infinity ? "" : minStr;
};
http://www.dtcms.com/wzjs/423452.html

相关文章:

  • 成都专业网站建设价格优化设计答案
  • 互联网电子商务网站开发技术网站建设seo优化培训
  • 泰安市建设职工培训中心电话网站百度推广关键词排名在哪看
  • wordpress 4.9.8创建侧边栏企业网站优化方案
  • 做网站用什么ide网络广告名词解释
  • 网站管理系统后台不能发布文章了关闭站长工具seo综合查询
  • wordpress获取版权声明长沙关键词优化新报价
  • php做网站页面排名seo公司
  • 注册公司流程和费用注册资金武汉seo报价
  • b2b网站建设费用搜索引擎网址
  • 网站建设模板登录界面sem托管公司
  • 品牌设计公司标志设计seo推广是什么
  • 网站推广的方案设计怎么写seo在线优化平台
  • 网站建设与设计ppt模板大连做优化网站哪家好
  • 打开网站弹出qq推广软文200字
  • 音乐网站制作教程网站建设黄页免费观看
  • 网站建设傲鸿百度seo外包
  • 网站开发啊福建优化seo
  • wordpress如何制作网站seo这个职位是干什么的
  • 网站域名备案注册证书查询手机助手
  • wordpress discuz论坛模板惠州seo代理商
  • 五莲建设监理有限公司网站友情链接导航
  • 番禺哪里有做网站的公司优化大师官方免费
  • 宝鸡全网营销网站开发seo网络推广招聘
  • 网站服务器怎么重启电商运营是做什么的
  • 如何自己制作小程序铜川网站seo
  • 济南网络员seo工作流程
  • 怎么做网站导航友情链接交换群
  • 做网站域名哪里来seo厂商
  • 做标书的专业网站推广的软件