package
0.0.0-20241220224003-b7cf03a90b2b
Repository: https://github.com/szhou12/leetcode-go.git
Documentation: pkg.go.dev
# README
76. Minimum Window Substring
Solution idea
Sliding Window
- 对于每个吃进来的元素
s[right]
,首先更新该字符出现次数的window[s[right]]++
。如果更新后,window[s[right]]
等于需要出现的次数need[s[right]]
,则计数器count++
,说明有一个字符满足了出现次数的要求. - 当
count
等于t
中的字符类型数len(need)
时,说明任务已经实现。此时,让left
指针不断右移,相应的window[s[left]]
就要自减,一旦window[s[left] < need[s[left]]
,则count
需要自减1从而不再满足len(need)
,说明需要继续加入新元素才能满足任务. 从而right
才可以右移继续遍历。 - 在这个过程中,每次满足条件
count==len(need)
,都需要不断更新和记录结果。