leetcode1062题,最长重复子串。比如aabcaabdaab,输出最长的重复过的aab
leetcode758题,字符串中的加粗单词。比如 words = [“ab”, “bc”] 和 S = “aabcd”,需要返回 “aabcd”。
leetcode3题,无重复字符的最长字串。比如pwwkew,最长无重复字符是wke
已经出现N次的题目了,套路总结下
1、定义startA、startB、curr,通过curr控制移动,匹配startA+curr与startB+curr的大小
2、一旦找到一个ok的以后,start仅仅进行+1移动,否则start会丢失部分信息
3、鉴于758题,插个话,前缀和一定要考虑第一个元素的感受
3如下:
int lengthOfLongestSubstring(char * s){
int start, end, curr, slen, i, ret, flag;
start = 0;
end = start;
slen = strlen(s);
ret = 0;
flag = 0;
while(start < slen && end < slen) {
for (i = start; i < end; i++) {
if (s[i] == s[end]) {
flag = 1;
break;
}
}
ret = i - start + 1> ret ? i - start + 1 : ret;
if (flag == 1) {
start = i + 1;
flag = 0