本文 首发于 🍀 永浩转载 请注明 来源

[toc]

开篇词

第零章、必读系列

学习算法和刷题的框架思维

动态规划解题套路框架

回溯算法解题套路框架

BFS 算法解题套路框架

我写了首诗,让你闭着眼睛也能写对二分搜索

我写了首诗,把滑动窗口算法算法变成了默写题

一个方法团灭 LeetCode 股票买卖问题

一个方法团灭 LeetCode 打家劫舍问题

一个方法团灭 nSum 问题

经典动态规划:高楼扔鸡蛋

经典动态规划:子集背包问题

经典动态规划:完全背包问题

表达式求值算法:实现计算器

第一章、动态规划系列

动态规划解题套路框架

动态规划答疑篇

动态规划和回溯算法到底谁是谁爹?

动态规划设计:最⻓递增子序列

动态规划设计:最大子数组

经典动态规划:0-1 背包问题

经典动态规划:子集背包问题

经典动态规划:完全背包问题

经典动态规划:编辑距离

经典动态规划:高楼扔鸡蛋

经典动态规划:高楼扔鸡蛋(进阶)

经典动态规划:戳气球

经典动态规划:最⻓公共子序列

动态规划之子序列问题解题模板

动态规划之博弈问题

动态规划之正则表达

动态规划之四键键盘

动态规划之KMP字符匹配算法

贪心算法之区间调度问题

团灭 LeetCode 股票买卖问题

团灭 LeetCode 打家劫舍问题

第二章、数据结构系列

学习数据结构和算法读什么书

算法学习之路

二叉堆详解实现优先级队列

LRU算法详解

二叉搜索树操作集锦

如何计算完全二叉树的节点数

特殊数据结构:单调栈

特殊数据结构:单调队列

设计Twitter 递归反转链表的一部分

队列实现栈|栈实现队列

第三章、算法思维系列

学习算法和刷题的思路指南

回溯算法解题套路框架

回溯算法团灭子集、排列、组合问题

回溯算法最佳实践:解数独

回溯算法最佳实践:括号生成

二分查找详解

双指针技巧总结

滑动窗口技巧

twoSum问题的核心思想

常用的位操作

拆解复杂问题:实现计算器

烧饼排序

前缀和技巧

字符串乘法

FloodFill算法详解及应用

区间调度之区间合并问题

区间调度之区间交集问题

信封嵌套问题

几个反直觉的概率问题

第四章、高频面试系列

如何实现LRU算法

如何用 BFS 算法秒杀各种智力题

如何高效寻找素数

如何高效进行模幂运算

如何计算编辑距离

如何运用二分查找算法

如何高效解决接雨水问题

如何去除有序数组的重复元素

如何寻找最⻓回文子串

如何运用贪心思想玩跳跃游戏

如何k个一组反转链表

如何判定括号合法性

如何寻找缺失的元素

如何同时寻找缺失和重复的元素

如何判断回文链表

如何在无限序列中随机抽取元素

如何调度考生的座位

Union-Find算法详解

Union-Find算法应用

一行代码就能解决的算法题

二分查找高效判定子序列

第五章、技术文章系列

Linux的进程、线程、文件描述符是什么

关于 Linux shell 你必须知道的

Linux shell 的实用小技巧

加密算法的前身今世

我用四个命令概括了 Git 的所有套路

Git/SQL/正则表达式的在线练习平台