返回顶部

给定一个字符串 `s` ,请你找出其中不含有重复字符的 **最长子串** 的长度。

class Solution {
public int lengthOfLongestSubstring(String s) {
if(s.length()==0)
return 0;
Map<Character,Integer> map = new HashMap<Character,Integer>();
int left =0;
int maxlen = 0;
for(int i =0;i<s.length();i++){
if(map.containsKey(s.charAt(i))){
left = Math.max(left,map.get(s.charAt(i))+1);
}
map.put(s.charAt(i),i);
maxlen = Math.max(maxlen,i-left+1);
}
return maxlen;
}
}
/HashMap数据结构
用了get,put,加入映射。containskey发现map中是否存在对应的key
s.charAt(i)将String中对应的字符取出
/
int a = Integer.parseInt("123")

posted @ 2021-11-03 22:39  holting  阅读(544)  评论(0编辑  收藏  举报