题目:
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.
代码:
#include<unordered_set>
class Solution {
public:
int lengthOfLongestSubstring(string s) {
int maxlen = 0;
for (int i = 0; i < s.size(); i++)
{
unordered_map<char, int> letters;
int j;
for (j = i; j < s.size(); j++)
{
letters[s[j]]++;
if (letters[s[j]] > 1)
break;
}
if (j - i > maxlen)
maxlen = j - i;
}
return maxlen;
}
};