public static int lengthOfLongstSubString(String s)
{
const int ASCII_MAX = 255;
int[] last = new int[ASCII_MAX];
for (var i = 0; i < ASCII_MAX; i++) last[i] = -1;
int start = 0;
int max_len = 0;
for(int i = 0; i < s.Length; i++)
{
if (last[s.ElementAt(i)] >= start)
{
max_len = Math.Max(i - start, max_len);
start = last[s.ElementAt(i)]+1;
}
last[s.ElementAt(i)] = i;
}
return Math.Max((int)s.Length - start, max_len);
}
贪心法-最大不重复子串
最新推荐文章于 2022-10-29 15:49:00 发布