https://blog.csdn.net/qq_41433722/article/details/113975547
集中练习(5.23-5.28):
https://leetcode.cn/problemset/all/?topicSlugs=linked-list&page=1&sorting=W3t9XQ%3D%3D
编号 | 题目名称 | 难度 | tag | 时/空复杂度 | 个人难度 | 复习次数 | 上次复习时间 | note |
---|---|---|---|---|---|---|---|---|
450 | 删除二叉搜索树中的节点 | 中等 | 二叉搜索树 | |||||
96 | 不同的二叉搜索树 | 简单 | 二叉搜索树 记忆化搜索 | |||||
95 | 不同的二叉搜索树II | 中等 | 二叉搜索树、记忆化搜索 | |||||
1373 | 二叉搜索子树的最大键值和 | 困难 | 二叉搜索树、回溯、递归 | |||||
297 | 二叉树的序列化与反序列化 | 困难 | 二叉树、深度优先、广度优先 | |||||
236 | 二叉树的最近公共祖先 | 困难 | 二叉树、深度优先 | |||||
222 | 完全二叉树的节点个数 | 中等 | 二叉树、深度优先、主定理 | |||||
341 | 扁平化嵌套列表迭代器 | 中等 | 栈、深度优先、迭代器 | |||||
560 | 和为 K 的子数组 | 中等 | 数组、哈希表、前缀和 | |||||
5 | 最长回文子串 | 中等 | 字符串、dp、双指针 | O(n^1)/O(1) | 8 | 0 | - | 没有写出来 |
76 | 最小覆盖子串 | 困难 | 字符串、哈希表、双指针 | |||||
3 | 无重复字符的最长子串 | 中等 | 字符串、哈希表、双指针 | |||||
528 | 按权重随机选择 | 中等 | 数字、二分查找、前缀和、随机化 | |||||
410 | 分割数组的最大值 | 困难 | 数组、贪心、二分查找 | |||||
1011 | 在 D 天内送达包裹的能力 | 中等 | 数组、贪心、二分查找 | |||||
875 | 爱吃香蕉的珂珂 | 中等 | 数组、二分查找 | |||||
380 | O(1) 时间插入、删除和获取随机元素 | 中等 | 设计、数组、哈希表、随机化 | |||||
316 | 去除重复字母 | 中等 | 栈、贪心、字符串、单调栈 | |||||
2271 | 毯子覆盖的最多白色砖块数 | 中等 | 前缀和、二分 | |||||
234 | 回文链表 | 简单 | 链表 | O(n)/O(1) | 一遍过 | 1 | 2022.5.29 | 需要分情况讨论 |
25 | K 个一组翻转链表 | 困难 | 链表 | O(n)/O(1) | 6 | 1 | 2022.05.29 | 链表上走N步到既定位置调试半天 |
109 | 有序链表转换二叉搜索树 | 中等 | 链表 | O(nlogn)/O(n) | 4 | 1 | 2022.05.29 | 链表找中间的点 |
138 | 复制带随机指针的链表 | 中等 | 链表 | O(n)/O(1) | 5 | 1 | 2022.06.10 | 有更好的实现方法,两遍扫描 |
116 | 填充每个节点的下一个右侧节点指针 | 中等 | 链表 | O(n)/O(n) | 9 | 1 | 2022.05.29 | BFS, 第一次看到没思路,看题解完成 |
146 | LRU缓存 | 中等 | 链表 | O(10^5)/O(10^4) | 6 | 0 | - | 哈希,双链表 |
147 | 对链表进行插入排序 | 中等 | 链表 | O(n^2)/O(1) | 6 | 1 | 2022.05.29 | 吃了没有画图的亏,定位半天 |
148 | 排序链表 | 中等 | 链表 | O(nlogn)/O(1) | 8 | 0 | - | 想到自底向上,未实现 |
328 | 奇偶链表 | 中等 | 链表 | O(n)/O(1) | 5 | 1 | 2022.05.29 | 吃了没有画图的亏,定位半天 |
11 | 盛最多水的容器 | 中等 | 数组、双指针 | O(n)/O(1) | 9 | 0 | - | 仅仅想到枚举 |
15 | 三数之和 | 中等 | 数组、双指针 | O(n^2)/O(1) | 9 | 0 | - | 去重问题,如果在数组遍历过程中去重 |
31 | 下一个排列 | 中等 | 数组、双指针 | O(n)/O(1) | 10 | 0 | - | 排列、字典序问题, 第一遍时完全没有思路 |
16 | 最接近的三数之和 | 中等 | 数组、双指针 | O(n^2)/O(1) | 10 | 0 | - | 第一遍时完全没有思路 |
18 | 4数之和 | 中等 | 数组、双指针 | O(n^3)/O(1) | 8 | 0 | - | 去重,第一遍时完全没有思路 |
244 | 最短单词距离 II | 中等 | 设计、数组、双指针 | O(n)/O(n) | 8 | 0 | - | 计算两个数组元素组合的最短距离,第一遍时没有思路 |
251 | 展开二维向量 | 中等 | 设计、数组、双指针、迭代器 | O(n)/O(n) | 9 | 0 | - | 已经做过一次类似的题目,见leetcode341,没有思路 |
253 | 会议室 II | 中等 | 贪心、数组、双指针、排序、优先级队列 | O(nlogn)/O(n) | 7 | 0 | - | 已经做过一次类似的题目,区间合并的题目,虽然做出来,磕磕盼盼了半天 |
2296 | 设计一个文本编辑器 | 困难 | 设计、链表、字符串、双向链表、模拟 | O(n)/O(n) | 8 | 0 | - | 完全模拟超时 |
350 | 两个数组的交集 II | 简单 | 数组、哈希表、双指针 | O(mlogm + nlogn)/O(1) | 5 | 0 | - | 下一次完成进阶要求 |
155 | 最小栈 | 简单 | 栈、设计 | O(1)/O(n) | 6 | 0 | - | 思考了半天才想出来 |
408 | 有效单词缩写 | 简单 | 双指针、字符串 | O(n)/O(1) | 7 | 0 | - | 思路很简单,调试半天,对于下标在字符串中的加减需要进一步练习 |
jianzhioffer50 | 第一个只出现一次的字符 | 简单 | 哈希表、字符串、计数 | O(n)/O(26) | 6 | 0 | - | 有序哈希表练习 |
287 | 寻找重复数 | 中等 | 数组、二分查找 | O(nlogn)/O(1) | 9 | 0 | - | 二分查找 |
42 | 接雨水 | 困难 | 数组、双指针、动态规划 | O(n)/O(n) | 9 | 0 | - | 思路 |