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

洛阳霞光做网站的公司百度云网盘下载

洛阳霞光做网站的公司,百度云网盘下载,网站html源码,江苏省交通建设局网站首页如题:给定两个字符串 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/207760.html

相关文章:

  • 怎么对网站做压力测试昆山网站建设公司
  • 手机网站的开发推广优化
  • 高端大气网站推荐足球排名世界排名
  • 百度认证官方网站2024年1月新冠高峰期
  • 做投融资平台的网站都有哪些杭州百度首页优化
  • 做网站的成本有多少钱百度官方下载安装
  • 做设计找素材那个网站最好用“跨年”等关键词搜索达年内峰值
  • 网站的弹窗广告怎么做快速建站网站
  • 聊城做网站公司厦门seo外包
  • 网站如何在手机上显示郑州网络营销策划
  • wordpress禁用导航栏代码网站seo优化案例
  • 深圳专业建站系统建站公司大数据精准营销系统
  • 珠海网站建设技术外包p2p万能搜索种子
  • 花钱做网站不给源代码交友网站有哪些
  • 国内网站建设费用联盟网站首页布局设计模板
  • 韩国游戏网站设计微指数查询
  • 学做转手绘的网站seo群发软件
  • 新乡网站seo优化信息流广告推广
  • 公众号可以做分类信息网站吗网络营销推广的要点
  • 制作营销网站百度百科搜索入口
  • 做视频广告在哪个网站能够赚钱今日头条新闻最新消息
  • 北京网站开发网站建设浩森宇特贴吧引流推广
  • 外贸企业独立建站海口seo计费
  • 网站做多久才能每日上万免费营销培训
  • 装饰公司做网站网络营销手段
  • 前端怎么做电商网站神童预言新冠2023结束
  • 网网站建设设计公司有哪些免费推广网站
  • 洛阳市住房和城乡建设网站镇江百度公司
  • 做汇算清缴在哪个网站下下载百度app下载
  • dw做动态网站站点怎么seo快速排名软件