LeetCode-3. Longest Substring Without Repeating Characters

Posted 清风oo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode-3. Longest Substring Without Repeating Characters相关的知识,希望对你有一定的参考价值。

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) {
        queue<char> char_q;
        
        set<char> char_set;
        
        int ret=0;
        for(char c:s)
        {
            if(char_set.count(c) != 0)
            {
                ret = max((int)char_q.size(),ret);
                while(char_q.front() != c)
                {
                    char_set.erase(char_q.front());
                    char_q.pop();
                }
                char_set.erase(char_q.front());
                char_q.pop();
            }
            char_q.push(c);
            char_set.insert(c);
        }
        ret = max((int)char_q.size(),ret);
        return ret;
        
    }
};

 

以上是关于LeetCode-3. Longest Substring Without Repeating Characters的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode 3. Longest Substring Without Repeating

3. 没有重复字母的最长子串 [leetcode 3: Longest Substring Without Repeating Characters]

3. 没有重复字母的最长子串 [leetcode 3: Longest Substring Without Repeating Characters]

leetcode 3. Longest Substring Without Repeating Characters (Python版)

LeetCode - 3 - Longest Substring Without Repeating Characters

[LeetCode]3. Longest Substring Without Repeating Characters