对刷过的题做一下分类记录,方便面试前进行复习。其中参考了很多leetcode题解区算法大佬的答案, 综合考量了算法复杂度和容易理解两方面。
- 双指针
Title | Solution |
---|---|
26. 删除有序数组中的重复项 | C++ |
83. 删除排序链表中的重复元素 | C++ |
27. 移除元素 | C++ |
283. 移动零 | C++ |
167. 两数之和 II - 输入有序数组 | C++ |
344. 反转字符串 | C++ |
5. 最长回文子串 | C++ |
870. 优势洗牌 | C++ |
- 滑动窗口
Title | Solution |
---|---|
76. 最小覆盖子串 | C++ |
567. 字符串的排列 | C++ |
438. 找到字符串中所有字母异位词 | C++ |
3. 无重复字符的最长子串 | C++ |
- 二分查找
Title | Solution |
---|---|
704. 二分查找 | C++ |
34. 在排序数组中查找元素的第一个和最后一个位置 | C++ |
875. 爱吃香蕉的珂珂 | C++ |
1011. 在 D 天内送达包裹的能力 | C++ |
410. 分割数组的最大值 | C++ |
- 前缀和
Title | Solution |
---|---|
303. 区域和检索 - 数组不可变 | C++ |
304. 二维区域和检索 - 矩阵不可变 | C++ |
528. 按权重随机选择 | C++ |
- 差分
Title | Solution |
---|---|
1109. 航班预订统计 | C++ |
1094. 拼车 | C++ |
- 遍历数组
Title | Solution |
---|---|
48. 旋转图像 | C++ |
54. 螺旋矩阵 | C++ |
- 常数时间删除/查找数组中的任意元素
Title | Solution |
---|---|
380. O(1) 时间插入、删除和获取随机元素 | C++ |
710. 黑名单中的随机数 | C++ |
- 单调栈
Title | Solution |
---|---|
402. 移掉 K 位数字 | C++ |
1081. 不同字符的最小子序列 | C++ |
321. 拼接最大数 | C++ |
- 双指针
Title | Solution |
---|---|
141. 环形链表 | C++ |
142. 环形链表 II | C++ |
160. 相交链表 | C++ |
19. 删除链表的倒数第 N 个结点 | C++ |
21. 合并两个有序链表 | C++ |
23. 合并K个升序链表 | C++ |
86. 分隔链表 | C++ |
234. 回文链表 | C++ |
- 反转链表
Title | Solution |
---|---|
206. 反转链表 | C++ |
92. 反转链表 II | C++ |
25. K 个一组翻转链表 | C++ |
Title | Solution |
---|---|
C++ | |
C++ | |
C++ |
Title | Solution |
---|---|
30. 串联所有单词的子串 | C++ |
C++ | |
C++ |
Title | Solution |
---|---|
C++ | |
C++ | |
C++ |
- 二叉树遍历
Title | Solution |
---|---|
144. 二叉树的前序遍历 | C++ |
94. 二叉树的中序遍历 | C++ |
145. 二叉树的后序遍历 | C++ |
102. 二叉树的层序遍历 | C++ |
- 二叉树属性
Title | Solution |
---|---|
104. 二叉树的最大深度 | C++ |
111. 二叉树的最小深度 | C++ |
543. 二叉树的直径 | C++ |
101. 对称二叉树 | C++ |
222. 完全二叉树的节点个数 | C++ |
110. 平衡二叉树 | C++ |
- 二叉树修改与构造
Title | Solution |
---|---|
114. 二叉树展开为链表 | C++ |
116. 填充每个节点的下一个右侧节点指针 | C++ |
226. 翻转二叉树 | C++ |
105. 从前序与中序遍历序列构造二叉树 | C++ |
106. 从中序与后序遍历序列构造二叉树 | C++ |
654. 最大二叉树 | C++ |
889. 根据前序和后序遍历构造二叉树 | C++ |
Title | Solution |
---|---|
912. 排序数组:快速排序 | C++ |
C++ | |
C++ | |
-
组合、排列、子集 | Title | Solution | | ------------------------------------------------------------ | :------: | | 77. 组合 | C++ | | 39. 组合总和 | C++ | | | C++ | | | |
-
字符串中的回溯问题
Title | Solution |
---|---|
C++ | |
17. 电话号码的字母组合 | C++ |
C++ |