zoukankan      html  css  js  c++  java
  • 3.lengthOfLongestSubstring

    Q:

    Given a string s, find the length of the longest substring without repeating characters.

    Example 1:

    Input: s = "abcabcbb"
    Output: 3
    Explanation: The answer is "abc", with the length of 3.
    

    Example 2:

    Input: s = "bbbbb"
    Output: 1
    Explanation: The answer is "b", with the length of 1.
    

    Example 3:

    Input: s = "pwwkew"
    Output: 3
    Explanation: The answer is "wke", with the length of 3.
    Notice that the answer must be a substring, "pwke" is a subsequence and not a substring.
    

    Example 4:

    Input: s = ""
    Output: 0

    Example 5:

    Input: s = "dvdf"
    Output: 3

    Constraints:

    • 0 <= s.length <= 5 * 104
    • s consists of English letters, digits, symbols and spaces.

    Answer

    1.

    class Solution(object):
        def lengthOfLongestSubstring(self, s):
            """
            :type s: str
            :rtype: int
            """
            output = []
            l_max=0
            if s:
                for x in s:
                    if x not in output:
                        output.append(x)
                        l_1=len(output)
                        if l_1 > l_max: l_max=l_1
                    else:
                        i = output.index(x)
                        output=output[i+1:]
                        output.append(x)
            return l_max

     2.

    #!/usr/bin/python
    class Solution(object):
        def lengthOfLongestSubstring(self, s):
            """
            :type s: str
            :rtype: int
            """
        start=max_l=0
        used_chart = {}
        for i in range(len(s)):
            print("s[i],i",s[i],i)
            if s[i] in used_chart and start <=used_chart[s[i]]:
                start=used_chart[s[i]]+1
                
            else:
                max_l=max(max_l,i-start+1)
            used_chart[s[i]] = i
        return(max_l)
    好的心态+正确的方法
  • 相关阅读:
    离开学校一年多
    ZOJ Problem Set–1337 Pi
    Old Bill
    ZOJ Problem Set–1382 A Simple Task
    ZOJ Problem Set 2975 Kinds of Fuwas
    ZOJ Problem Set 2952 Find All M^N Please
    Generate Passwords
    Java 数据类型转换之字符串
    ZOJ Problem Set 2987 Misspelling
    Digital Roots
  • 原文地址:https://www.cnblogs.com/guolongnv/p/15084074.html
Copyright © 2011-2022 走看看