அல்கோரிதம்window shrinking logic
Window Shrinking Logic — சுருக்கத் தர்க்கம்
TT
Testlaa Team
May 14, 2026•1 min read
சுருக்கத் தர்க்கம் — எப்போது, எவ்வளவு சுருக்குவது; சில சமயம் L ஐ last_index[ch]+1 க்கு தாவல்.
உண்மை உலகில் இது ஏன் முக்கியம்?
நாட்காட்டி — அடுத்த காலியிடத்திற்கு தொடக்கம் தாவல்; எப்போதும் +1 அல்ல.
மையக் கருத்து (மாணவர்களுக்கான விளக்கம்)
படிப்படி சுருக்கம் எதிர் monotonic queue; நகல்களுக்கு last_index தாவல்.
Pythonில் முயற்சி செய்வோம்
def length_longest_substring_two_distinct(s: str) -> int:
from collections import Counter
ct, L, best = Counter(), 0, 0
for R, ch in enumerate(s):
ct[ch] += 1
while len(ct) > 2:
ct[s[L]] -= 1
if ct[s[L]] == 0:
del ct[s[L]]
L += 1
best = max(best, R - L + 1)
return best
print(length_longest_substring_two_distinct("eceba"))
அடிக்கடி நேரும் தவறுகள்
Lதாவல் — செல்லும் சாளரம் தவறவிடப்படவில்லை என நிரூபணம்.- கொள்கை கலவை.
முக்கியச் சுருக்கக் குறிப்புகள்
- சமநிலை வாக்கியம் எழுது.
- தாவல் — நிரூபணம் தேவை.
Tags:
Sliding windowPythonமாணவர்கள்
