双指针算法
2021-04-19 09:27
标签:win toc substr bst sts 注意 最小覆盖 lan long 双指针算法 while()是非法的,在外更新答案 注意while()中是合法,在此更新答案。 双指针算法 标签:win toc substr bst sts 注意 最小覆盖 lan long 原文地址:https://www.cnblogs.com/lixyuan/p/13289984.htmlLeetCode 3. 无重复字符的最长子串
class Solution {
public int lengthOfLongestSubstring(String s) {
char[] c = s.toCharArray();
int n = c.length;
int[] cnt = new int[128];
int res = 0;
for(int i=0, j=0; j 1) cnt[c[i++]]--;
res = Math.max(res, j-i+1);
}
return res;
}
}
LeetCode 76. 最小覆盖子串
class Solution {
boolean isEq(int[] cnt1, int[] cnt2) {
for(int i=0; i cnt1[i])
return false;
return true;
}
public String minWindow(String s, String t) {
if(t.equals("")) return "";
char[] s1 = s.toCharArray();
char[] t1 = t.toCharArray();
int n = s1.length, m = t1.length;
int[] cnt1 = new int[128];
int[] cnt2 = new int[128];
for(int i=0; i j-i+1))
res = s.substring(i, j+1);
cnt1[s1[i++]]--;
}
}
return res;
}
}