[toc]
#### 11. 盛最多水的容器
#### 283. 移动零
#### 70. 爬楼梯
#### 1. 两数之和
#### 15. 三数之和
#### 26. 删除有序数组中的重复项
#### 189. 轮转数组
#### 21. 合并两个有序链表
#### 88. 合并两个有序数组
#### 1. 两数之和
#### 283. 移动零
#### 66. 加一
栈、队列、优先队列、双端队列
#### 20. 有效的括号
#### 155. 最小栈
#### 84. 柱状图中最大的矩形
#### 239. 滑动窗口最大值
#### 242. 有效的字母异位词
#### 49. 字母异位词分组
#### 1. 两数之和
精选示例:https://shimo.im/docs/R6g9WJV89QkHrDhr/read
#### 94. 二叉树的中序遍历
#### 144. 二叉树的前序遍历
#### 590. N 叉树的后序遍历
#### 589. N 叉树的前序遍历
#### 429. N 叉树的层序遍历
#### 70. 爬楼梯
#### 22. 括号生成
#### 226. 翻转二叉树
#### 98. 验证二叉搜索树
#### 104. 二叉树的最大深度
#### 111. 二叉树的最小深度
#### 297. 二叉树的序列化与反序列化
#### 236. 二叉树的最近公共祖先
#### 105. 从前序与中序遍历序列构造二叉树
#### 77. 组合
#### 46. 全排列
#### 47. 全排列 II
#### 50. Pow(x, n)
#### 78. 子集
· 牛顿迭代法原理
· 牛顿迭代法代码
#### 169. 多数元素
#### 17. 电话号码的字母组合
#### 51. N 皇后
DFS 代码模板
# 递归写法
visited = set()
def dfs(node, visited):
if node in visited: # terminator
# already visited
return
visited.add(node)
# process current node here.
...
for next_node in node.children():
if next_node not in visited:
dfs(next_node, visited)
# 非递归写法
def DFS(self, root):
if tree.root is None:
return []
visited, stack = [], [root]
while stack:
node = stack.pop()
visited.add(node)
process (node)
# 生成相关的节点
nodes = generate_related_nodes(node)
stack.push(nodes)
# other processing work
...
BFS 代码模板
def BFS(root):
visited = set()
queue = []
queue.append([root])
while queue:
node = queue.pop()
visited.add(node)
process(node)
nodes = generate_related_nodes(node)
queue.push(nodes)
# other processing work
public class TreeNode {
int val;
TreeNode left;
TreeNode right;
TreeNode(int x) {
val = x;
}
}
public List<List<Integer>> levelOrder(TreeNode root) {
List<List<Integer>> allResults = new ArrayList<>();
if (root == null) {
return allResults;
}
Queue<TreeNode> nodes = new LinkedList<>();
nodes.add(root);
while (!nodes.isEmpty()) {
int size = nodes.size();
List<Integer> results = new ArrayList<>();
for (int i = 0; i < size; i++) {
TreeNode node = nodes.poll();
results.add(node.val);
if (node.left != null) {
nodes.add(node.left);
}
if (node.right != null) {
nodes.add(node.right);
}
}
allResults.add(results);
}
return allResults;
}
· BFS 代码模板
#### 102. 二叉树的层序遍历
#### 433. 最小基因变化
#### 22. 括号生成
#### 515. 在每个树行中找最大值
#### 127. 单词接龙
#### 126. 单词接龙 II
#### 200. 岛屿数量
#### 529. 扫雷游戏
· 动态规划定义
#### 860. 柠檬水找零
#### 122. 买卖股票的最佳时机 II
#### 455. 分发饼干
#### 874. 模拟行走机器人
#### 55. 跳跃游戏
#### 45. 跳跃游戏 II
· 二分查找代码模板
#### 69. Sqrt(x)
#### 367. 有效的完全平方数
#### 33. 搜索旋转排序数组
#### 74. 搜索二维矩阵
#### 153. 寻找旋转排序数组中的最小值
· 递归代码模板
· 分治代码模板
· 动态规划定义
#### 62. 不同路径
#### 63. 不同路径 II
#### 1143. 最长公共子序列
#### 70. 爬楼梯
#### 120. 三角形最小路径和
#### 53. 最大子数组和
#### 152. 乘积最大子数组
#### 198. 打家劫舍
#### 213. 打家劫舍 II
#### 121. 买卖股票的最佳时机
#### 122. 买卖股票的最佳时机 II
#### 123. 买卖股票的最佳时机 III
#### 309. 最佳买卖股票时机含冷冻期
#### 188. 买卖股票的最佳时机 IV
#### 714. 买卖股票的最佳时机含手续费
#### 121. 买卖股票的最佳时机
#### 279. 完全平方数
#### 72. 编辑距离 重点
#### 55. 跳跃游戏
#### 45. 跳跃游戏 II
#### 62. 不同路径
#### 63. 不同路径 II
#### 980. 不同路径 III
#### 322. 零钱兑换
#### 518. 零钱兑换 II
#### 32. 最长有效括号
#### 64. 最小路径和
#### 72. 编辑距离
#### 91. 解码方法
#### 221. 最大正方形
#### 403. 青蛙过河
#### 410. 分割数组的最大值
#### 552. 学生出勤记录 II
#### 621. 任务调度器
#### 647. 回文子串
#### 76. 最小覆盖子串
#### 312. 戳气球
#### 102. 二叉树的层序遍历
#### 208. 实现 Trie (前缀树)
#### 208. 实现 Trie (前缀树)
#### 212. 单词搜索 II
#### 200. 岛屿数量
· 并查集代码模板
· DFS 代码模板
· BFS 代码模板
· 棋类复杂度
双向BFS
#### 127. 单词接龙
#### 433. 最小基因变化
启发式搜索
· A* 代码模板
· 相似度测量方法
#### 1091. 二进制矩阵中的最短路径
#### 773. 滑动谜题
#### 37. 解数独
· 平衡树
#### 191. 位1的个数
#### 231. 2 的幂
#### 190. 颠倒二进制位
#### 51. N 皇后
#### 52. N皇后 II
#### 338. 比特位计数
· Understanding the Meltdown exploit
· 替换算法总揽
· 十大经典排序算法
· 快速排序代码示例
· 归并排序代码示例
· 堆排序代码示例
· 直播课回顾: https://pan.baidu.com/s/1sFuZ8GjDCXy5mPCNLZhHxw 提取码: 2rdy
· 十大经典排序算法
#### 1122. 数组的相对排序
#### 242. 有效的字母异位词
#### 56. 合并区间
#### 493. 翻转对
#### 70. 爬楼梯
#### 62. 不同路径
#### 198. 打家劫舍
#### 64. 最小路径和
#### 121. 买卖股票的最佳时机
#### 300. 最长递增子序列
#### 91. 解码方法
#### 32. 最长有效括号
#### 85. 最大矩形
#### 115. 不同的子序列
#### 818. 赛车
· 不可变字符串
字符串基础问题
#### 709. 转换成小写字母
#### 58. 最后一个单词的长度
#### 771. 宝石与石头
#### 387. 字符串中的第一个唯一字符
#### 8. 字符串转换整数 (atoi)
字符串操作问题
#### 14. 最长公共前缀
#### 344. 反转字符串
#### 541. 反转字符串 II
#### 151. 翻转字符串里的单词
#### 557. 反转字符串中的单词 III
#### 917. 仅仅反转字母
异位词问题
#### 242. 有效的字母异位词
#### 49. 字母异位词分组
#### 438. 找到字符串中所有字母异位词
回文串问题
#### 125. 验证回文串
#### 680. 验证回文字符串 Ⅱ
#### 5. 最长回文子串
最长子串、子序列问题
#### 1143. 最长公共子序列
#### 72. 编辑距离
#### 5. 最长回文子串
字符串 +DP 问题
#### 10. 正则表达式匹配
#### 44. 通配符匹配
#### 115. 不同的子序列
参考链接
#### 387. 字符串中的第一个唯一字符
#### 8. 字符串转换整数 (atoi)
#### 541. 反转字符串 II
#### 151. 翻转字符串里的单词
#### 557. 反转字符串中的单词 III
#### 917. 仅仅反转字母
#### 438. 找到字符串中所有字母异位词
#### 5. 最长回文子串
#### 205. 同构字符串
#### 680. 验证回文字符串 Ⅱ
#### 44. 通配符匹配
#### 32. 最长有效括号
#### 115. 不同的子序列
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。