Teknik sliding-window mempertahankan rentang yang berdekatan (jendela) pada array atau string dan meluncurkannya daripada menghitung ulang dari awal, menyelesaikan banyak masalah subarray/substring dalam O(n).
Idenya
Perluas jendela dengan memindahkan tepi kanan; kecilkan dengan memindahkan tepi kiri ketika constraint dilanggar. Gunakan kembali komputasi sebelumnya daripada memindai ulang.
Contoh: max sum dari jendela berukuran k
():
window = (arr[:k])
best = window
i (k, (arr)):
window += arr[i] - arr[i - k]
best = (best, window)
best
max_window_sum([, , , , , ], )
