package
0.0.0-20241220224003-b7cf03a90b2b
Repository: https://github.com/szhou12/leetcode-go.git
Documentation: pkg.go.dev

# README

209. Minimum Size Subarray Sum

Solution idea

Two Pointers left, right 指针都从 index=0 开始.

如果 subarray sum 小于 target, 就一直move right, 直到 sum $\geq$ target.

此时,停下right, 记录subarray length, 开始move left, 直到 sum $<$ target.

再重新开始 move right, 重复上述动作.

双指针的物理意义leftright圈出来的subarray 永远表示 subarray ending at right whose sum $\geq$ target.

实际编程中:用for循环来控制右指针的思路比较清晰,左指针仅当固定了一个右指针的前提下进行移动;相对而言,用while来控制双指针比较容易出错.

Time complexity = $O(n)$