1. 程式人生 > 其它 >力扣424.替換後的最長替換字元——python

力扣424.替換後的最長替換字元——python

技術標籤:力扣pythonleetcode

這裡利用defaultdict模組,創建出一個所有值為0的字典,之後進行遍歷逐漸進行判斷最大的可選的的數值,利用需要替換數=開始-結束+1-最大的重複數,如果符合要求先記錄,否則我們改變起點繼續進行

        from collections import defaultdict
        maxLen, Start, maxFreq = 0, 0, 0
        # 統計出現次數
        freqDict = defaultdict(int)
        for End in range(len(s)):
            rightChar =
s[End] freqDict[rightChar] += 1 # 儲存歷史出現的最大重複數 maxFreq = max(freqDict[rightChar], maxFreq) # 縮小滑動視窗 if (End - Start + 1 - maxFreq) > k: leftChar = s[Start] Start += 1 freqDict[leftChar] -=
1 maxLen = max(maxLen, End - Start + 1) return maxLen