您的位置:首页 > 编程语言 > Java开发

java-最大不重复字符串长度

2017-03-18 06:59 211 查看

描述

给定一字符串,求其中最大不重复子串长度。
exp:
input:"",output:0
input:"aaa",output:1
input:"abcbabc",output:3

代码

public class Fun {
public static int maxLenthNoRepeat(String str){
if(str==null || str.isEmpty()){
return 0;
}
Map<Character, Integer> map = new HashMap<Character, Integer>();
int maxLength = 0;
int current = 0;

//循环字符串,取出每个字符
for(int index=0; index < str.length(); index++){
if(map.containsKey(str.charAt(index))){
current = map.get(str.charAt(index)) + 1;
}
else{
if((index-current+1)>maxLength){
maxLength=index-current+1;
}
}
map.put(str.charAt(index), index);
}

return maxLength;
}
}



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  程序员
相关文章推荐