|
5 | 5 |
|
6 | 6 | ### 链表 |
7 | 7 |
|
8 | | -- [x] [BM1 反转链表 【简单】](链表/1.reverseList.md) |
9 | | -- [ ] [BM2 链表内指定区间反转 【中等】](链表/1.reverseList.md) |
10 | | -- [ ] [BM3 链表中的节点每k个一组翻转 【中等】](链表/1.reverseList.md) |
11 | | -- [ ] [BM4 合并两个排序的链表 【简单】](链表/1.reverseList.md) |
12 | | -- [ ] [BM5 合并k个已排序的链表 【较难】](链表/1.reverseList.md) |
13 | | -- [ ] [BM6 判断链表中是否有环 【简单】](链表/1.reverseList.md) |
14 | | -- [ ] [BM7 链表中环的入口结点 【中等】](链表/1.reverseList.md) |
15 | | -- [ ] [BM8 链表中倒数最后k个结点 【简单】](链表/1.reverseList.md) |
16 | | -- [ ] [BM9 删除链表的倒数第n个节点 【中等】](链表/1.reverseList.md) |
17 | | -- [ ] [BM10 两个链表的第一个公共结点 【简单】](链表/1.reverseList.md) |
18 | | -- [ ] [BM11 链表相加(二) 【中等】](链表/1.reverseList.md) |
19 | | -- [ ] [BM12 单链表的排序 【中等】](链表/1.reverseList.md) |
20 | | -- [ ] [BM13 判断一个链表是否为回文结构 【简单】](链表/1.reverseList.md) |
21 | | -- [ ] [BM14 链表的奇偶重排 【中等】](链表/1.reverseList.md) |
22 | | -- [ ] [BM15 删除有序链表中重复的元素-I 【简单】](链表/1.reverseList.md) |
23 | | -- [ ] [BM15 删除有序链表中重复的元素-II 【中等】](链表/1.reverseList.md) |
| 8 | +- [x] [1.反转链表【简单】](链表/reverseList.md) |
| 9 | +- [ ] [2.链表内指定区间反转 【中等】](链表/reverseBetween.md) |
| 10 | +- [ ] [3.链表中的节点每k个一组翻转 【中等】](链表/reserseGroup.md) |
| 11 | +- [ ] [4.合并两个排序的链表 【简单】](链表/reverseList.md) |
| 12 | +- [ ] [5.合并k个已排序的链表 【较难】](链表/reverseList.md) |
| 13 | +- [ ] [6.判断链表中是否有环 【简单】](链表/reverseList.md) |
| 14 | +- [ ] [7.链表中环的入口结点 【中等】](链表/reverseList.md) |
| 15 | +- [ ] [8.链表中倒数最后k个结点 【简单】](链表/reverseList.md) |
| 16 | +- [ ] [9.删除链表的倒数第n个节点 【中等】](链表/reverseList.md) |
| 17 | +- [ ] [10.两个链表的第一个公共结点 【简单】](链表/reverseList.md) |
| 18 | +- [ ] [11.链表相加(二) 【中等】](链表/reverseList.md) |
| 19 | +- [ ] [12.单链表的排序 【中等】](链表/reverseList.md) |
| 20 | +- [ ] [13.判断一个链表是否为回文结构 【简单】](链表/reverseList.md) |
| 21 | +- [ ] [14.链表的奇偶重排 【中等】](链表/reverseList.md) |
| 22 | +- [ ] [15.删除有序链表中重复的元素-I 【简单】](链表/reverseList.md) |
| 23 | +- [ ] [16.删除有序链表中重复的元素-II 【中等】](链表/reverseList.md) |
24 | 24 |
|
25 | 25 | ### 二分查找/排序 |
26 | 26 |
|
27 | | -- [ ] [BM17 二分查找-I 【简单】]() |
28 | | -- [ ] [BM18 二维数组中的查找 【中等】]() |
29 | | -- [ ] [BM19 寻找峰值 【中等】]() |
30 | | -- [ ] [BM20 数组中的逆序对 【中等】]() |
31 | | -- [ ] [BM21 旋转数组的最小数字 【简单】]() |
32 | | -- [ ] [BM22 比较版本号 【中等】]() |
| 27 | +- [ ] [17.二分查找-I 【简单】]() |
| 28 | +- [ ] [18.二维数组中的查找 【中等】]() |
| 29 | +- [ ] [19.寻找峰值 【中等】]() |
| 30 | +- [ ] [20.数组中的逆序对 【中等】]() |
| 31 | +- [ ] [21.旋转数组的最小数字 【简单】]() |
| 32 | +- [ ] [22.比较版本号 【中等】]() |
33 | 33 |
|
34 | 34 | ### 二叉树 |
35 | 35 |
|
36 | | -- [ ] [BM23 二叉树的前序遍历 【简单】]() |
37 | | -- [ ] [BM24 二叉树的中序遍历 【中等】]() |
38 | | -- [ ] [BM25 二叉树的后序遍历 【简单】]() |
39 | | -- [ ] [BM26 求二叉树的层序遍历 【中等】]() |
40 | | -- [ ] [BM27 按之字形顺序打印二叉树 【中等】]() |
41 | | -- [ ] [BM28 二叉树的最大深度 【简单】]() |
42 | | -- [ ] [BM29 二叉树中和为某一值的路径(一) 【简单】]() |
43 | | -- [ ] [BM30 二叉搜索树与双向链表 【中等】]() |
44 | | -- [ ] [BM31 对称的二叉树 【简单】]() |
45 | | -- [ ] [BM32 合并二叉树 【简单】]() |
46 | | -- [ ] [BM33 二叉树的镜像 【简单】]() |
47 | | -- [ ] [BM34 判断是不是二叉搜索树 【中等】]() |
48 | | -- [ ] [BM35 判断是不是完全二叉树 【中等】]() |
49 | | -- [ ] [BM36 判断是不是平衡二叉树 【简单】]() |
50 | | -- [ ] [BM37 二叉搜索树的最近公共祖先 【简单】]() |
51 | | -- [ ] [BM38 在二叉树中找到两个节点的最近公共祖先 【中等】]() |
52 | | -- [ ] [BM39 序列化二叉树 【较难】]() |
53 | | -- [ ] [BM40 重建二叉树 【中等】]() |
54 | | -- [ ] [BM41 输出二叉树的右视图 【中等】]() |
| 36 | +- [ ] [23.二叉树的前序遍历 【简单】]() |
| 37 | +- [ ] [24.二叉树的中序遍历 【中等】]() |
| 38 | +- [ ] [25.二叉树的后序遍历 【简单】]() |
| 39 | +- [ ] [26.求二叉树的层序遍历 【中等】]() |
| 40 | +- [ ] [27.按之字形顺序打印二叉树 【中等】]() |
| 41 | +- [ ] [28.二叉树的最大深度 【简单】]() |
| 42 | +- [ ] [29.二叉树中和为某一值的路径(一) 【简单】]() |
| 43 | +- [ ] [30.二叉搜索树与双向链表 【中等】]() |
| 44 | +- [ ] [31.对称的二叉树 【简单】]() |
| 45 | +- [ ] [32.合并二叉树 【简单】]() |
| 46 | +- [ ] [33.二叉树的镜像 【简单】]() |
| 47 | +- [ ] [34.判断是不是二叉搜索树 【中等】]() |
| 48 | +- [ ] [35.判断是不是完全二叉树 【中等】]() |
| 49 | +- [ ] [36.判断是不是平衡二叉树 【简单】]() |
| 50 | +- [ ] [37.二叉搜索树的最近公共祖先 【简单】]() |
| 51 | +- [ ] [38.在二叉树中找到两个节点的最近公共祖先 【中等】]() |
| 52 | +- [ ] [39.序列化二叉树 【较难】]() |
| 53 | +- [ ] [40.重建二叉树 【中等】]() |
| 54 | +- [ ] [41.输出二叉树的右视图 【中等】]() |
55 | 55 |
|
56 | 56 | ### 堆/栈/队列 |
57 | 57 |
|
58 | | -- [ ] [BM42 用两个栈实现队列 【简单】]() |
59 | | -- [ ] [BM43 包含min函数的栈 【简单】]() |
60 | | -- [ ] [BM44 有效括号序列 【简单】]() |
61 | | -- [ ] [BM45 滑动窗口的最大值 【较难】]() |
62 | | -- [ ] [BM46 最小的K个数 【中等】]() |
63 | | -- [ ] [BM47 寻找第K大 【中等】]() |
64 | | -- [ ] [BM48 数据流中的中位数 【中等】]() |
65 | | -- [ ] [BM49 表达式求值 【中等】]() |
| 58 | +- [ ] [42.用两个栈实现队列 【简单】]() |
| 59 | +- [ ] [43.包含min函数的栈 【简单】]() |
| 60 | +- [ ] [44.有效括号序列 【简单】]() |
| 61 | +- [ ] [45.滑动窗口的最大值 【较难】]() |
| 62 | +- [ ] [46.最小的K个数 【中等】]() |
| 63 | +- [ ] [47.寻找第K大 【中等】]() |
| 64 | +- [ ] [48.数据流中的中位数 【中等】]() |
| 65 | +- [ ] [49.表达式求值 【中等】]() |
66 | 66 |
|
67 | 67 | ### 哈希 |
68 | 68 |
|
69 | | -- [ ] [BM50 两数之和 【简单】]() |
70 | | -- [ ] [BM51 数组中出现次数超过一半的数字 【简单】]() |
71 | | -- [ ] [BM52 数组中只出现一次的两个数字 【中等】]() |
72 | | -- [ ] [BM53 缺失的第一个正整数 【中等】]() |
73 | | -- [ ] [BM54 三数之和 【中等】]() |
| 69 | +- [ ] [50.两数之和 【简单】]() |
| 70 | +- [ ] [51.数组中出现次数超过一半的数字 【简单】]() |
| 71 | +- [ ] [52.数组中只出现一次的两个数字 【中等】]() |
| 72 | +- [ ] [53.缺失的第一个正整数 【中等】]() |
| 73 | +- [ ] [54.三数之和 【中等】]() |
74 | 74 |
|
75 | 75 | ### 递归/回溯 |
76 | | -- [ ] [BM55 没有重复项数字的全排列 【中等】]() |
77 | | -- [ ] [BM56 有重复项数字的全排列 【中等】]() |
78 | | -- [ ] [BM57 岛屿数量 【中等】]() |
79 | | -- [ ] [BM58 字符串的排列 【中等】]() |
80 | | -- [ ] [BM59 N皇后问题 【较难】]() |
81 | | -- [ ] [BM60 括号生成 【中等】]() |
82 | | -- [ ] [BM61 矩阵最长递增路径 【中等】]() |
| 76 | +- [ ] [55.没有重复项数字的全排列 【中等】]() |
| 77 | +- [ ] [56.有重复项数字的全排列 【中等】]() |
| 78 | +- [ ] [57.岛屿数量 【中等】]() |
| 79 | +- [ ] [58.字符串的排列 【中等】]() |
| 80 | +- [ ] [59.N皇后问题 【较难】]() |
| 81 | +- [ ] [60.括号生成 【中等】]() |
| 82 | +- [ ] [61.矩阵最长递增路径 【中等】]() |
83 | 83 |
|
84 | 84 | ### 动态规划 |
85 | 85 |
|
86 | | -- [x] [BM62 斐波那契数列 【入门】](动态规划/fibonacci.md) |
87 | | -- [x] [BM63 跳台阶 【简单】](动态规划/jumpFloor.md) |
88 | | -- [ ] [BM64 最小花费爬楼梯 【简单】]() |
89 | | -- [ ] [BM65 最长公共子序列(二) 【中等】]() |
90 | | -- [ ] [BM66 最长公共子串 【中等】]() |
91 | | -- [ ] [BM67 不同路径的数目(一) 【简单】]() |
92 | | -- [ ] [BM68 矩阵的最小路径和 【中等】]() |
93 | | -- [ ] [BM69 把数字翻译成字符串 【中等】]() |
94 | | -- [ ] [BM70 兑换零钱(一) 【中等】]() |
95 | | -- [ ] [BM71 最长上升子序列(一) 【中等】]() |
96 | | -- [ ] [BM72 连续子数组的最大和 【简单】]() |
97 | | -- [ ] [BM73 最长回文子串 【中等】]() |
98 | | -- [ ] [BM74 数字字符串转化成IP地址 【中等】]() |
99 | | -- [ ] [BM75 编辑距离(一) 【较难】]() |
100 | | -- [ ] [BM76 正则表达式匹配 【较难】]() |
101 | | -- [ ] [BM77 最长的括号子串 【较难】]() |
102 | | -- [ ] [BM78 打家劫舍(一) 【中等】]() |
103 | | -- [ ] [BM79 打家劫舍(二) 【中等】]() |
104 | | -- [ ] [BM80 买卖股票的最好时机(一) 【简单】]() |
105 | | -- [ ] [BM81 买卖股票的最好时机(二) 【中等】]() |
106 | | -- [ ] [BM82 买卖股票的最好时机(三) 【较难】]() |
| 86 | +- [x] [62.斐波那契数列 【入门】](动态规划/fibonacci.md) |
| 87 | +- [x] [63.跳台阶 【简单】](动态规划/jumpFloor.md) |
| 88 | +- [ ] [64.小花费爬楼梯 【简单】]() |
| 89 | +- [ ] [65.最长公共子序列(二) 【中等】]() |
| 90 | +- [ ] [66.最长公共子串 【中等】]() |
| 91 | +- [ ] [67.不同路径的数目(一) 【简单】]() |
| 92 | +- [ ] [68.矩阵的最小路径和 【中等】]() |
| 93 | +- [ ] [69.把数字翻译成字符串 【中等】]() |
| 94 | +- [ ] [70.兑换零钱(一) 【中等】]() |
| 95 | +- [ ] [71.最长上升子序列(一) 【中等】]() |
| 96 | +- [ ] [72.连续子数组的最大和 【简单】]() |
| 97 | +- [ ] [73.最长回文子串 【中等】]() |
| 98 | +- [ ] [74.数字字符串转化成IP地址 【中等】]() |
| 99 | +- [ ] [75.编辑距离(一) 【较难】]() |
| 100 | +- [ ] [76.正则表达式匹配 【较难】]() |
| 101 | +- [ ] [77.最长的括号子串 【较难】]() |
| 102 | +- [ ] [78.打家劫舍(一) 【中等】]() |
| 103 | +- [ ] [79.打家劫舍(二) 【中等】]() |
| 104 | +- [ ] [80.买卖股票的最好时机(一) 【简单】]() |
| 105 | +- [ ] [81.买卖股票的最好时机(二) 【中等】]() |
| 106 | +- [ ] [82.买卖股票的最好时机(三) 【较难】]() |
107 | 107 |
|
108 | 108 | ### 字符串 |
109 | 109 |
|
110 | | -- [ ] [BM83 字符串变形 【简单】]() |
111 | | -- [ ] [BM84 最长公共前缀 【简单】]() |
112 | | -- [ ] [BM85 验证IP地址 【中等】]() |
113 | | -- [ ] [BM86 大数加法 【中等】]() |
| 110 | +- [ ] [83.字符串变形 【简单】]() |
| 111 | +- [ ] [84.最长公共前缀 【简单】]() |
| 112 | +- [ ] [85.验证IP地址 【中等】]() |
| 113 | +- [ ] [86.大数加法 【中等】]() |
114 | 114 |
|
115 | 115 | ### 双指针 |
116 | 116 |
|
117 | | -- [ ] [BM87 合并两个有序的数组 【简单】]() |
118 | | -- [ ] [BM88 判断是否为回文字符串 【入门】]() |
119 | | -- [ ] [BM89 合并区间 【中等】]() |
120 | | -- [ ] [BM90 最小覆盖子串 【较难】]() |
121 | | -- [ ] [BM91 反转字符串 【入门】]() |
122 | | -- [ ] [BM92 最长无重复子数组 【中等】]() |
123 | | -- [ ] [BM93 盛水最多的容器 【中等】]() |
124 | | -- [ ] [BM94 接雨水问题 【较难】]() |
| 117 | +- [ ] [87.合并两个有序的数组 【简单】]() |
| 118 | +- [ ] [88.判断是否为回文字符串 【入门】]() |
| 119 | +- [ ] [89.合并区间 【中等】]() |
| 120 | +- [ ] [90.最小覆盖子串 【较难】]() |
| 121 | +- [ ] [91.反转字符串 【入门】]() |
| 122 | +- [ ] [92.最长无重复子数组 【中等】]() |
| 123 | +- [ ] [93.盛水最多的容器 【中等】]() |
| 124 | +- [ ] [94.接雨水问题 【较难】]() |
125 | 125 |
|
126 | 126 |
|
127 | 127 | ### 贪心算法 |
128 | 128 |
|
129 | | -- [ ] [BM95 分糖果问题 【较难】]() |
130 | | -- [ ] [BM96 主持人调度(二) 【中等】]() |
| 129 | +- [ ] [95.分糖果问题 【较难】]() |
| 130 | +- [ ] [96.主持人调度(二) 【中等】]() |
131 | 131 |
|
132 | 132 | ### 模拟 |
133 | 133 |
|
134 | | -- [ ] [BM97 旋转数组 【中等】]() |
135 | | -- [ ] [BM98 螺旋矩阵 【简单】]() |
136 | | -- [ ] [BM99 顺时针旋转矩阵 【中等】]() |
137 | | -- [ ] [BM100 设计LRU缓存结构 【较难】]() |
138 | | -- [ ] [BM101 设计LFU缓存结构 【较难】]() |
| 134 | +- [ ] [97.旋转数组 【中等】]() |
| 135 | +- [ ] [98.螺旋矩阵 【简单】]() |
| 136 | +- [ ] [99.顺时针旋转矩阵 【中等】]() |
| 137 | +- [ ] [100.设计LRU缓存结构 【较难】]() |
| 138 | +- [ ] [101.设计LFU缓存结构 【较难】]() |
0 commit comments