题目描述
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。
输入: “abcabcbb”
输出: 3
解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。
详解hashmap
这里使用c++。[^1]
class Solution {
public:
int hashmap[130];
int lengthOfLongestSubstring(string s) {
int max=0;
int n = s.size();
for(int i=0,j=0;j<n;j++){
hashmap[s[j]]++;
while(hashmap[s[j]]>1){
hashmap[s[i++]]--; }
if(j-i+1>max)
max = j-i+1;
}
return max;
} };