அல்கோரிதம்window shrinking logic

Window Shrinking Logic — சுருக்கத் தர்க்கம்

TT
Testlaa Team
May 14, 20261 min read

சுருக்கத் தர்க்கம்எப்போது, எவ்வளவு சுருக்குவது; சில சமயம் Llast_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மாணவர்கள்