《剑指Offer》题解汇总索引表(leetcode)
🎈
文章目录
- 《剑指Offer》题解汇总索引表(leetcode)
- [【LeetCode】《剑指Offer》第Ⅰ篇⊰⊰⊰ 3 - 11题](https://blog.csdn.net/weixin_44368437/article/details/114194973)
- [【LeetCode】《剑指Offer》第Ⅱ篇⊰⊰⊰ 12 - 19题](https://blog.csdn.net/weixin_44368437/article/details/114220348)
- [【LeetCode】《剑指Offer》第Ⅲ篇⊰⊰⊰ 20 - 31题](https://blog.csdn.net/weixin_44368437/article/details/114229562)
- [【LeetCode】《剑指Offer》第Ⅳ篇⊰⊰⊰ 32 - 38题](https://blog.csdn.net/weixin_44368437/article/details/114249554)
- [【LeetCode】《剑指Offer》第Ⅴ篇⊰⊰⊰ 39 - 47题](https://blog.csdn.net/weixin_44368437/article/details/114266808)
- [【LeetCode】《剑指Offer》第Ⅵ篇⊰⊰⊰ 48 - 55题](https://blog.csdn.net/weixin_44368437/article/details/114282204)
- [【LeetCode】《剑指Offer》第Ⅶ篇⊰⊰⊰ 56 - 60题](https://blog.csdn.net/weixin_44368437/article/details/114288705)
- [【LeetCode】《剑指Offer》第Ⅷ篇⊰⊰⊰ 61 - 68题](https://blog.csdn.net/weixin_44368437/article/details/114297552)
🎈

【注】难度⭐表示easy,⭐⭐表示medium,⭐⭐⭐表示hard
🎈
【LeetCode】《剑指Offer》第Ⅰ篇⊰⊰⊰ 3 - 11题
题目 | 难度 | 解法 |
---|---|---|
03. 数组中重复的数字 | ⭐ | Set、频次统计 |
04. 二维数组中的查找题目难度解法 | ⭐⭐ | 二叉查找树 |
05. 替换空格题目难度解法 | ⭐ | 模拟 |
06. 从尾到头打印链表题目难度解法 | ⭐ | 栈 |
07. 重建二叉树题目难度解法 | ⭐⭐ | 递归 |
09. 用两个栈实现队列题目难度解法 | ⭐ | — |
10-Ⅰ. 斐波那契数列题目难度解法 | ⭐ | 动态规划、迭代 |
10-Ⅱ. 青蛙跳台阶问题题目难度解法 | ⭐ | 斐波那契数列 |
11. 旋转数组的最小数字题目难度解法 | ⭐ | 二分法 |
🎈
【LeetCode】《剑指Offer》第Ⅱ篇⊰⊰⊰ 12 - 19题
题目 | 难度 | 解法 |
---|---|---|
12. 矩阵中的路径 | ⭐⭐ | dfs + 回溯 |
13. 机器人的运动范围 | ⭐⭐ | dfs |
14-Ⅰ. 剪绳子 | ⭐⭐ | dp、数学 |
14-Ⅱ. 剪绳子Ⅱ | ⭐⭐ | 数学 |
15. 二进制中1的个数 | ⭐ | 位运算 |
16. 数值的整数次方 | ⭐⭐ | 快速幂、二分法 |
17. 打印从1到最大的n位数 | ⭐ | 字符串模拟、递归 |
18. 删除链表的节点 | ⭐ | 递归 |
19. 正则表达式匹配 | ⭐⭐⭐ | 动态规划 |
🎈
【LeetCode】《剑指Offer》第Ⅲ篇⊰⊰⊰ 20 - 31题
题目 | 难度 | 解法 |
---|---|---|
20. 表示数值的字符串 | ⭐⭐ | 正则表达式 |
21. 调整数组顺序使奇数位于偶数前面 | ⭐ | 双指针 |
22. 链表中倒数第k个节点 | ⭐ | 快慢指针 |
24. 反转链表 | ⭐ | 迭代、递归 |
25. 合并两个排序的链表 | ⭐ | 迭代、递归 |
26. 树的子结构 | ⭐⭐ | 递归 |
27. 二叉树的镜像 | ⭐ | 递归 |
28. 对称的二叉树 | ⭐ | 递归 |
29. 顺时针打印矩阵 | ⭐ | — |
30. 包含min函数的栈 | ⭐ | 单调栈 |
31. 栈的压入、弹出序列 | ⭐⭐ | — |
🎈
【LeetCode】《剑指Offer》第Ⅳ篇⊰⊰⊰ 32 - 38题
题目 | 难度 | 解法 |
---|---|---|
32-Ⅰ. 从上到下打印二叉树 | ⭐⭐ | 层序遍历 |
32-Ⅱ. 从上到下打印二叉树 II | ⭐ | 层序遍历 |
32-Ⅲ. 从上到下打印二叉树 III | ⭐⭐ | 层序遍历、递归 |
33. 二叉搜索树的后序遍历序列 | ⭐⭐ | 单调栈 |
34. 二叉树中和为某一值的路径 | ⭐⭐ | 递归 |
35. 复杂链表的复制 | ⭐⭐ | 哈希表、原地算法 |
36. 二叉搜索树与双向链表 | ⭐⭐ | 中序遍历 |
37. 序列化二叉树 | ⭐⭐⭐ | 树的读写 |
38. 字符串的排列 | ⭐⭐ | 全排列 |
🎈
【LeetCode】《剑指Offer》第Ⅴ篇⊰⊰⊰ 39 - 47题
题目 | 难度 | 解法 |
---|---|---|
39. 数组中出现次数超过一半的数字 | ⭐ | 摩尔投票法 |
40. 最小的k个数 | ⭐ | 排序算法 |
41. 数据流中的中位数 | ⭐⭐⭐ | 堆 |
42. 连续子数组的最大和 | ⭐ | 贪心法 |
43. 1~n 整数中 1 出现的次数 | ⭐⭐⭐ | 找规律 |
44. 数字序列中某一位的数字 | ⭐⭐ | 找规律 |
45. 把数组排成最小的数 | ⭐⭐ | 自定义排序 |
46. 把数字翻译成字符串 | ⭐⭐ | 动态规划 |
47. 礼物的最大价值 | ⭐⭐ | 动态规划 |
🎈
【LeetCode】《剑指Offer》第Ⅵ篇⊰⊰⊰ 48 - 55题
题目 | 难度 | 解法 |
---|---|---|
48. 最长不含重复字符的子字符串 | ⭐⭐ | 滑动窗口 |
49. 丑数 | ⭐⭐ | 指针 |
50. 第一个只出现一次的字符 | ⭐ | 遍历+频次统计 |
51. 数组中的逆序对 | ⭐⭐⭐ | 归并 |
52. 两个链表的第一个公共节点 | ⭐ | 数学 |
53 - I. 在排序数组中查找数字 I | ⭐ | 二分 |
53 - II. 0~n-1中缺失的数字 | ⭐ | 二分 |
54. 二叉搜索树的第k大节点 | ⭐ | 中序遍历 |
55 - I. 二叉树的深度 | ⭐ | 递归 |
55 - II. 平衡二叉树 | ⭐ | 递归 |
🎈
【LeetCode】《剑指Offer》第Ⅶ篇⊰⊰⊰ 56 - 60题
题目 | 难度 | 解法 |
---|---|---|
56 - I. 数组中数字出现的次数 | ⭐ | 位运算 |
56 - II. 数组中数字出现的次数 II | ⭐⭐ | 比特位计数 |
57. 和为s的两个数字 | ⭐ | 双指针 |
57 - II. 和为s的连续正数序列 | ⭐ | 滑动窗口 |
58 - I. 翻转单词顺序 | ⭐ | String类 |
58 - II. 左旋转字符串 | ⭐ | String类 |
59 - I. 滑动窗口的最大值 | ⭐ | 单调队列 |
59 - II. 队列的最大值 | ⭐⭐ | 单调队列 |
60. n个骰子的点数 | ⭐⭐ | 动态规划 |
🎈
【LeetCode】《剑指Offer》第Ⅷ篇⊰⊰⊰ 61 - 68题
题目 | 难度 | 解法 |
---|---|---|
61. 扑克牌中的顺子 | ⭐ | 排序 |
62. 圆圈中最后剩下的数字 | ⭐ | 约瑟夫循环 |
63. 股票的最大利润 | ⭐⭐ | 动态规划 |
64. 求1+2+…+n | ⭐⭐ | 短路算法 |
65. 不用加减乘除做加法 | ⭐ | 位运算 |
66. 构建乘积数组 | ⭐⭐ | 对称遍历 |
67. 把字符串转换成整数 | ⭐⭐ | 认真_ |
68 - I. 二叉搜索树的最近公共祖先 | ⭐ | 二叉搜索树性质 |
68 - II. 二叉树的最近公共祖先 | ⭐ | 递归 |
🎈
创作整理不易,如果对您有所帮助,还望多+点赞、收藏☚
欢迎在评论区留下您宝贵的建议😉😉😉