采用插入排序的思想来做,运行效果不太理想,但胜在好理解吧
public static int lengthOfLongestSubstring(String s) {
char[] data = s.toCharArray();
int flag=0;
if(data.length==1) flag=1;
else {
//类似插入排序的条件
for (int i = 0; i < data.length; i++) {
for (int j = i+1; j < data.length; j++){
char temp2 = data[j];
boolean flag2 =true;
int temp=1;
for(int k=j-1;k>=i;k--)
{
if(data[k]!=temp2) {
temp++;
}
else {
flag2 = false;
break;
}
}
flag=temp>flag?temp:flag;
if (flag2==false)
break;
}
}
}
return flag;
}