leetcode Longest Substring Without Repeating Character(Java)

来源:互联网 发布:程序员群头像 编辑:程序博客网 时间:2024/06/05 10:47

题目链接:点击打开链接

类型:

解法:记录每一子串起始位置和长度,并与当前最大长度进行比较

public class Solution {    public int lengthOfLongestSubstring(String s) {if (s.length() == 0) return 0;if (s.length() == 1) return 1;int max_len = 1;HashMap<Character, Integer> map = new HashMap<>();int begin = 0;int len = 1;for (int i=0 ; i<s.length() ; ++i){if (map.containsKey(s.charAt(i))){begin = Math.max(begin, map.get(s.charAt(i))+1);}map.put(s.charAt(i), i);len = i - begin + 1;max_len = (max_len > len) ? max_len : len;}return max_len;    }}


阅读全文
0 0
原创粉丝点击