我写了套框架,把滑动窗口算法变成了默写题
作者:labuladong 公众号:labuladong 若已授权白名单也必须保留以上来源信息 我有预感本文要火,所以先罗列一下我们号的所有算法套路集锦文章: 数据结构和算法学习指南 动态规划框架套路详解 回溯算法框架套路详解 BFS算法框架套路详解 二分搜索框架套路详解 双指针技巧套路汇总 滑动窗口框架套路详解(本文) 目前来说,以上几篇文章属于我们的镇号之宝,一直被其他人模仿,然而从未被超越。🤔 言归正传,鉴于前文 我作了首诗,保你闭着眼睛也能写对二分查找 的那首《二分搜索升天词》很受好评,并在民间广为流传,成为安睡助眠的一剂良方,今天在滑动窗口算法框架中,我再次编写一首小诗来歌颂滑动窗口算法的伟大: 关于双指针的快慢指针和左右指针的用法,可以参见前文 双指针技巧汇总 , 本文就解决一类最难掌握的双指针技巧:滑动窗口技巧,并总结出一套框架,可以保你闭着眼直接套出答案。 说起滑动窗口算法,很多读者都会头疼。这个算法技巧的思路非常简单,就是维护一个窗口,不断滑动,然后更新答案么。LeetCode 上有起码 10 道运用滑动窗口算法的题目,难度都是中等和困难。该算法的大致逻辑如下: int left = 0 , right = 0 ; while (right < s.size()) { // 增大窗口 window.add(s[right]); right++; while