3. 无重复字符的最长子串

发布时间:2023年12月20日

欢迎大家阅览博主机器学习与自然语言处理系列专栏:https://blog.csdn.net/qq_36583400/category_11959999.html

题目:给定一个字符串?s?,请你找出其中不含有重复字符的?最长子串?的长度。

这是个常规题,我们在遍历字符串的时候,始终存储一个没有重复字符的子字符串的即可,?当遍历的指针指向的字母一旦已经存在在我们存储的子字符串中,那么子字符串就应当去掉重复字符及其之前的那些字符,并拼接当前指针指向的字符,从而成为一个新的无重复子串。

def lengthOfLongestSubstring(self, s: str) -> int:
        if not s:
            return 0
        substring = ''
        maxlen = 0
        for x in s:
            if x in substring:
                 i = substring.index(x)
                 substring = substring[i+1:]
            substring += x
            maxlen = max(maxlen, len(substring))
        return maxlen

?

文章来源:https://blog.csdn.net/qq_36583400/article/details/135094170
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。