zoukankan      html  css  js  c++  java
  • 无重复字符的最长子串

    # 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 
    #
    #
    #
    # 示例 1:
    #
    #
    # 输入: s = "abcabcbb"
    # 输出: 3
    # 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。

    方法:

    def lengthOfLongestSubString(s):
        # 暂存无重复字符
        max_str = []
        # 记录最大长度
        count = 0
        for i in s:
            # 当前字符在无重复list中
            if i in max_str:
                # 更新最大长度值
                if len(max_str) > count:
                    count = len(max_str)
                # 将重复字符之前的全部置空
                max_str[:max_str.index(i)+1] = []
            # 存入新的不重复子串
            max_str.append(i)
        # 针对自身就是最大无重复字符情况
        return len(max_str) if len(max_str) > count else count
    时刻记着自己要成为什么样的人!
  • 相关阅读:
    我該怎麼辦
    這麼多年興許從來沒有釋放過
    我想做一個快樂的孩子
    纠结
    如何克服心煩氣躁
    如何樹立威嚴
    第零次作业
    第三周作业
    第二周作业,
    第二周作业
  • 原文地址:https://www.cnblogs.com/demo-deng/p/14922108.html
Copyright © 2011-2022 走看看