Leetcode 3:无重复字符的最长子串
生活随笔
收集整理的這篇文章主要介紹了
Leetcode 3:无重复字符的最长子串
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
給定一個字符串,找出不含有重復字符的最長子串的長度。
示例:
給定 “abcabcbb” ,沒有重復字符的最長子串是 “abc” ,那么長度就是3。
給定 “bbbbb” ,最長的子串就是 “b” ,長度是1。
給定 “pwwkew” ,最長子串是 “wke” ,長度是3。請注意答案必須是一個子串,“pwke” 是 子序列 而不是子串。
解題思路
先遍歷整個字符串,然后對遍歷到的每個字符后的字符檢查是否有重復元素,我們通過建立一個空的字符串,如果檢查的字符在這個空的字符串中沒有的話,我們將他加入這個空字符串中,并且記錄這個空字符串的長度。
class Solution:def lengthOfLongestSubstring(self, s):""":type s: str:rtype: int"""maxLength = 0for i,enum in enumerate(s): count = 0usedChar = str()for j in s[i:]: if j not in usedChar:usedChar += jcount += 1if maxLength < count: maxLength = countelse: breakreturn maxLength總結
以上是生活随笔為你收集整理的Leetcode 3:无重复字符的最长子串的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿维塔 11 交付量突破 2000 辆,
- 下一篇: 蓝桥杯--算法入门级题目及答案解析