static void Main(string[] args)
{
string s = "pwwkew";
int result = BestWay(s);
Console.WriteLine(result);
Console.ReadKey();
}
public static int BestWay(string s)
{
List<char> ls = new List<char>();
int n = s.Length;
int intMaxLength = 0;
for (int i = 0; i < n; i++)
{
if (ls.Contains(s[i]))
{
ls.RemoveRange(0, ls.IndexOf(s[i]) + 1);
}
ls.Add(s[i]);
//ls.Count > intMaxLength 如果为true则返回 ls.Count
//如果为false 则返回intMaxLength
intMaxLength = ls.Count > intMaxLength ? ls.Count : intMaxLength;
}
return intMaxLength;
}
public static int GetNum(string s)
{
List<char> list = new List<char>();
int length = s.Length;
int ans = 0;
int i = 0, j = 0;
while (i < length && j < length)
{
if (!list.Contains(s.ElementAt(j)))
{
list.Add(s.ElementAt(j));
j++;
ans = Math.Max(ans, j - i);
}
else
{
i++;
list.RemoveAt(0);
}
}
return ans;
}
public static int GetNum1(string s)
{
Hashtable list = new Hashtable();
//List<char> list = new List<char>();
int length = s.Length;
int ans = 0;
int i = 0, j = 0;
while (i < length && j < length)
{
if (!list.Contains(s.ElementAt(j)))
{
list.Add(s.ElementAt(j++), 0);
ans = Math.Max(ans, j - i);
}
else
{
list.Remove(s.ElementAt(i++));
}
}
return ans;
}
09-18
479
05-06
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交