首页 > 代码库 > 3. Longest Substring Without Repeating Characters
3. Longest Substring Without Repeating Characters
public int lengthOfLongestSubstring(String s) { if(s == null || s.length() == 0) return 0; char[] target = s.toCharArray(); int tail, head; tail = 0; Map<Character, Integer> map = new HashMap<Character, Integer>(); map.put(target[0], 0); int maxSubstringNum = map.size(); for(head = 1; head < s.length(); head++) { if(map.containsKey(target[head])) { int tmp = map.get(target[head]); for(int i = tail; i <= tmp; i++) { map.remove(target[i]); } tail = tmp + 1; map.put(target[head], head); } else { map.put(target[head], head); } if(map.size() > maxSubstringNum) { maxSubstringNum = map.size(); } } return maxSubstringNum; }
3. Longest Substring Without Repeating Characters
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。