力扣官方题解
:表示该代码主要参考力扣官方题解,可能存在细节上的改动未手动实现
:表示该代码我还没有自己在不看题解的情况下,自己手动实现,仅理解了题解的思路符合进阶要求
:力扣中部分题目存在进阶要求(即对时空复杂度更严格的限制),符合进阶要求,即满足了进阶所述的条件,但即使未满足,题目也一样可以通过。默认不标注该标签,可能表示未达到进阶要求,也可能题目本身不要求
- 参考题库
- 🔥 LeetCode 热题 HOT 100
- 剑指 Offer
题目类型 | 简单题目数量 | 中等题目数量 | 困难题目数量 |
---|---|---|---|
数组 | 3 | 2 | 0 |
链表 | 5 | 7 | 0 |
二叉树 | 6 | 7 | 0 |
动态规划 | 0 | 1 | 0 |
哈希表 | 0 | ||
栈队列 | |||
字符串 | |||
排序 | |||
深度优先搜索 | |||
广度优先搜索 |
算法技巧或算法思想 | 数据结构 |
---|---|
【技巧】双指针(如,快慢指针,左右指针,滑动窗口) | 数组,链表,字符串 |
【技巧】二分查找 | 数组 |
【技巧】滑动窗口(如,快慢指针) | 数组,字符串 |
【技巧】前缀和 | 数组 |
【技巧】差分数组 | 数组 |
【技巧】模拟 | 数组 |
【思想】递归(包含回溯算法,动态规划) | 树,二叉树 |
【注】模拟:题目本身不涉及算法,只是需要用代码实现题目的内容
【注】回溯算法本质是一棵多叉树
- 每一道题按照如下结构进行组织
- 标题:题目来源
- 思路
- 注意点
- 完整示例:完整的示例代码
- 时空复杂度
- 补充与拓展:一些额外补充的资料
- 教程
- 代码随想录
- Hello 算法
- 算法小抄