《labuladong的算法笔记》专攻算法刷题,训练算法思维,应对算法笔试,注重用套路和框架思维解决问题,以不变应万变。
第1章列举了几个最常见的算法类型及对应的解题框架思路,包括双指针、滑动窗口等算法技巧,并把动态规划、回溯算法、广度优先搜索等技巧的核心抽象为二叉树的两种问题形式。
第2章介绍了基础数据结构相关的算法,包括数组链表的常见技巧汇总和数据结构设计的经典例题。
第3章从二叉树的几种解题思路开始,尝试从二叉树的视角理解快速排序和归并排序,进一步讲解回溯、DFS、BFS等暴力搜索算法。
第4章具体介绍了动态规划相关的技巧,例如如何确定base case,如何写状态转移方程,如何进行状态压缩等技巧,并用动态规划的通用思路框架解决了十几道经典的动态规划问题。
第5章讲解了一些高频面试/笔试题目,每道题目可能会结合之前章节讲过的多种算法思路,也可能有多种解法。读完这一章,你就可以独自遨游题海啦!
labuladong,有多年的刷题经验,希望用通俗的语言帮助广大互联网从业者少走弯路,快速从根本上攻克算法难关,为职业道路的发展赋能。