3. Longest Substring Without Repeating Characters
Medium
6059348FavoriteShare
Given a string, find the length of the longest substring without repeating characters.
Example 1:
Input: "abcabcbb"
Output: 3
Explanation: The answer is "abc"
, with the length of 3.
Example 2:
Input: "bbbbb"
Output: 1
Explanation: The answer is "b"
, with the length of 1.
Example 3:
Input: "pwwkew"
Output: 3
Explanation: The answer is "wke"
, with the length of 3.
Note that the answer must be a substring, "pwke"
is a subsequence and not a substring.
class Solution {
public:
int lengthOfLongestSubstring(string s) {
int Result = 0;int RepeatedIndex = -1;
if(s.length() == 0){return Result;}
map<char,int> MapArray;
for(int i = 0;i < s.length();i ++){
if(MapArray.find(s[i]) != MapArray.end() && MapArray[s[i]] > RepeatedIndex){
RepeatedIndex = MapArray[s[i]];
}
if((i - RepeatedIndex) > Result){
Result = i - RepeatedIndex;
}
MapArray[s[i]] = i;
}
return Result;
}
};
标签:字符,int,MapArray,answer,length,Result,字符串,RepeatedIndex,最长 From: https://blog.51cto.com/u_13121994/5798280