स्लाइडिंग-विंडो तंत्र एका अॅरे किंवा स्ट्रिंगवर एक सतत श्रेणी (विंडो) राखते आणि त्याला सर्वतः पुन्हा मोजण्याऐवजी स्लाइड करते, अनेक सबअॅरे/सबस्ट्रिंग समस्या O(n) मध्ये सोडवते।
कल्पना
उजव्या किनारी हलवून विंडो विस्तृत करा; जेव्हा अडचण उल्लंघन होते तेव्हा डाव्या किनारी हलवून त्याचे संकोचन करा. पुनरावर्तन करण्याऐवजी मागील मोजणी पुनर्वापरा.
उदाहरण: आकार k च्या कोणत्याही विंडोचा कमाल बेरीज
():
window = (arr[:k])
best = window
i (k, (arr)):
window += arr[i] - arr[i - k]
best = (best, window)
best
max_window_sum([, , , , , ], )
