我是靠谱客的博主 粗心流沙,最近开发中收集的这篇文章主要介绍LeetCode-3-无重复字符的最长子串-C语言,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

int lengthOfLongestSubstring(char* s) {
int start=0,maxLen=0,index=0;
char c;
int arr[256];
int len ;
memset(arr, 0, sizeof(arr));
for(; s[index] !='';index++){
if(arr[s[index]]){
/* if found current letter exeists, remove letters before exeisted letter and matchming letter */
/* remove before letters */
while(s[index] != s[start]){
arr[s[start]]--;
start++;
}
/* remove the matchming latter */
arr[s[start]]--;
/* set start in the new loop */
start++;
}else{
/* none letter exeists, do nothing */
}
/* set current letter exeists */
arr[s[index]]++;
len = index - start + 1;
if(len > maxLen){
maxLen = len;
}
}
return maxLen;
}
--20190707
int lengthOfLongestSubstring(char * s){
int max = 0;
int cnt[256]={0};
int i = 0, j=0;
int len = 0;
while(s[j]){
if(cnt[s[j]]){
while(s[i] != s[j]){
cnt[s[i]]--;
i++;
len--;
}
i++;
}else{
if(++len > max){
max = len;
}
cnt[s[j]]++;
}
j++;
}
return max;
}
--20220730

最后

以上就是粗心流沙为你收集整理的LeetCode-3-无重复字符的最长子串-C语言的全部内容,希望文章能够帮你解决LeetCode-3-无重复字符的最长子串-C语言所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(65)

评论列表共有 0 条评论

立即
投稿
返回
顶部