出现提交时超出输出限制
来源:7-6 LeetCode:76. 最小覆盖子串

qq_煎了个卤蛋
2022-05-05
提交时出现这个问题
代码:
/**
- @param {string} s
- @param {string} t
- @return {string}
*/
var minWindow = function(s, t) {
if (s.length < t.length) return ''
if (s === t) return s;
let l = 0;
let r = 0;
let res = ''
const map = new Map();
for(let j = 0; j < t.length; j += 1) {
map.set(t[j], map.get(t[j]) ? map.get(t[j]) + 1 : 1);
}
let needType = map.size;
while(r < s.length) {
const ele = s[r];
if (map.has(ele)) {
map.set(ele, map.get(ele) - 1);
if (map.get(ele) === 0) {
needType -= 1;
}
}
while(needType === 0) {
let leftEle = s[l];
let res2 = s.substring(l, r + 1);
if (!res || res2.length < res.length) res = res2;
console.log(res);
if (map.has(leftEle)) {
map.set(leftEle, map.get(leftEle) + 1);
if (map.get(leftEle) === 1) {
needType += 1;
}
}
l += 1
}
r += 1;
}
return res;
};
写回答
1回答
-
lewis
2022-05-05
算法逻辑肯定错了,输出的字符串过于长。
022024-04-06
相似问题