题目网址:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台
public class Solution {
public int LengthOfLongestSubstring(string s) {
int result = 0;
char[] c = s.ToCharArray();
for(int i = 0; i < c.Length; i++) //第一个for循环用来遍历字符串(滑动窗口)
{
for(int j = i+1; j < c.Length; j++) //第二个for循环用来检查是否到达了重复字符串
{
if (IsRepeatString(c, i, j)) //用来判断该字符子串是否是重复字符串
{
if (result < j - i) result = j - i; break; //如果产生的结果大于当前结果,则让当前结果等于产生的结果(找最大子串)
}
if(j==c.Length-1) //判断如果直到结束也没有重复字符串的话,则赋值
{
if (result < j - i + 1) result = j - i + 1;break;
}
}
}
if (result == 0)
{
return s.Length;
}
return result;
}
public bool IsRepeatString(char[] c,int startIndex,int endIndex)
{
for(int i = startIndex; i <= endIndex; i++)
{
for(int j=i+1; j <= endIndex; j++)
{
if (c[i] == c[j])
{
return true;
}
}
}
return false;
}
}