![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
剑指offer
dotJunz
这个作者很懒,什么都没留下…
展开
-
剑指 Offer 03. 数组中重复的数字
通过交互让数字和下标一一对应,如果有多个数字对应同一个下标,那就找到了答案。原创 2023-08-28 21:10:42 · 63 阅读 · 0 评论 -
剑指 Offer 04. 二维数组中的查找
起始元素选在右上角,如果比target大,则向左移动;如果比target小,则向下移动。原创 2023-08-29 10:40:23 · 54 阅读 · 0 评论 -
剑指 Offer 05. 替换空格
先将字符串扩容,加上空格数量2倍的字符。为了避免字符被覆盖,两个指针从后往前走。指针i指向原来字符串的结尾,指针j指向扩容后的字符串结尾。原创 2023-08-29 16:48:01 · 93 阅读 · 0 评论 -
剑指 Offer 06. 从尾到头打印链表
利用栈后进先出的特性。原创 2023-08-30 11:48:05 · 52 阅读 · 0 评论 -
剑指 Offer 07. 重建二叉树
【代码】剑指 Offer 07. 重建二叉树。原创 2023-08-31 14:17:48 · 38 阅读 · 0 评论 -
剑指 Offer 09. 用两个栈实现队列
【代码】剑指 Offer 09. 用两个栈实现队列。原创 2023-08-31 14:27:57 · 38 阅读 · 0 评论 -
剑指 Offer 10- I. 斐波那契数列
对方法一进行空间优化。原创 2023-08-31 14:35:33 · 756 阅读 · 0 评论 -
剑指 Offer 10- II. 青蛙跳台阶问题
和很像,改一下初始值就行了。原创 2023-08-31 14:42:16 · 245 阅读 · 0 评论 -
剑指 Offer 11. 旋转数组的最小数字
要注意的是,由于存在重复数字,所以初始状态可能不满足二分的性质。不满足的情况是:左边开始的数字和右边结束的数字相等,所以一开始要缩小右边界,让右边界的数字小于第一个数字。这样左边的数字都大于等于第一个数字,右边的数字都小于第一个数字,两个区间的性质不同,就可以进行二分了。还有排除递增的情况。原创 2023-09-01 11:32:25 · 81 阅读 · 0 评论 -
剑指 Offer 12. 矩阵中的路径
方法一和方法二vis数组写法不同。方法一处理的是,方法二处理的是。原创 2023-09-02 18:17:46 · 614 阅读 · 0 评论 -
剑指 Offer 13. 机器人的运动范围
【代码】剑指 Offer 13. 机器人的运动范围。原创 2023-09-02 19:37:29 · 769 阅读 · 0 评论 -
剑指 Offer 14- I. 剪绳子
和整数拆分是同一道题。原创 2023-09-05 11:11:56 · 92 阅读 · 0 评论 -
剑指 Offer 14- II. 剪绳子 II
由于取模,只能用贪心,不能用动态规划了。原创 2023-09-19 14:55:08 · 28 阅读 · 0 评论 -
剑指 Offer 15. 二进制中1的个数
【代码】剑指 Offer 15. 二进制中1的个数。原创 2023-09-05 12:02:08 · 24 阅读 · 0 评论 -
剑指 Offer 16. 数值的整数次方
【代码】剑指 Offer 16. 数值的整数次方。原创 2023-09-06 15:29:06 · 27 阅读 · 0 评论 -
剑指 Offer 17. 打印从1到最大的n位数
dfs函数只输出n位数的情况,相比于让一个函数输出1到最大的n位数可以大大简化。:控制循环开始的起点。原创 2023-09-06 16:15:27 · 49 阅读 · 0 评论 -
剑指 Offer 18. 删除链表的节点
【代码】剑指 Offer 18. 删除链表的节点。原创 2023-09-06 16:23:58 · 35 阅读 · 0 评论 -
剑指 Offer 19. 正则表达式匹配
的情况,匹配多次时要注意判断前提是能匹配。初始化要考虑主串为空字符串,模式串为。一般情况时,根据模式串是。原创 2023-09-06 17:28:53 · 240 阅读 · 0 评论 -
剑指 Offer 20. 表示数值的字符串
【代码】剑指 Offer 20. 表示数值的字符串。原创 2023-09-06 18:51:44 · 80 阅读 · 0 评论 -
剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
【代码】剑指 Offer 21. 调整数组顺序使奇数位于偶数前面。原创 2023-09-06 19:26:57 · 98 阅读 · 0 评论 -
剑指 Offer 22. 链表中倒数第k个节点
快指针先走k步,再两个一块走。原创 2023-09-07 14:28:07 · 102 阅读 · 0 评论 -
剑指 Offer 24. 反转链表
和上面迭代的思想一样。原创 2023-09-07 15:09:41 · 102 阅读 · 0 评论 -
剑指 Offer 25. 合并两个排序的链表
【代码】剑指 Offer 25. 合并两个排序的链表。原创 2023-09-07 16:39:15 · 99 阅读 · 0 评论 -
剑指 Offer 26. 树的子结构
【代码】剑指 Offer 26. 树的子结构。原创 2023-09-08 10:26:34 · 34 阅读 · 0 评论 -
剑指 Offer 27. 二叉树的镜像
【代码】剑指 Offer 27. 二叉树的镜像。原创 2023-09-08 10:38:35 · 220 阅读 · 0 评论 -
剑指 Offer 28. 对称的二叉树
【代码】剑指 Offer 28. 对称的二叉树。原创 2023-09-08 11:11:49 · 93 阅读 · 0 评论 -
剑指 Offer 29. 顺时针打印矩阵
【代码】剑指 Offer 29. 顺时针打印矩阵。原创 2023-09-08 16:03:31 · 58 阅读 · 0 评论 -
剑指 Offer 30. 包含min函数的栈
当最小值要被替代的时候,将上一个最小值再加入一次栈,这样当当前最小值弹出时,还能找到上一个最小值。保存当前值和最小值的差值。原创 2023-09-10 20:51:22 · 220 阅读 · 0 评论 -
剑指 Offer 31. 栈的压入、弹出序列
【代码】剑指 Offer 31. 栈的压入、弹出序列。原创 2023-09-10 21:09:57 · 34 阅读 · 0 评论 -
剑指 Offer 32 - I. 从上到下打印二叉树
【代码】剑指 Offer 32 - I. 从上到下打印二叉树。原创 2023-09-10 21:20:40 · 37 阅读 · 0 评论 -
剑指 Offer 32 - II. 从上到下打印二叉树 II
【代码】剑指 Offer 32 - II. 从上到下打印二叉树 II。原创 2023-09-12 16:31:41 · 37 阅读 · 0 评论 -
剑指 Offer 32 - III. 从上到下打印二叉树 III
【代码】剑指 Offer 32 - III. 从上到下打印二叉树 III。原创 2023-09-12 16:36:27 · 47 阅读 · 0 评论 -
剑指 Offer 33. 二叉搜索树的后序遍历序列
【代码】剑指 Offer 33. 二叉搜索树的后序遍历序列。原创 2023-09-12 17:27:06 · 104 阅读 · 0 评论 -
剑指 Offer 34. 二叉树中和为某一值的路径
指的是:当变量作为形参传递给一个函数,在该函数内部修改了这个变量,回到主函数,如果该变量的值没有发生改变,则认为是。类型不需要显示回溯,因为是。类型,需要显示回溯,如。原创 2023-09-13 16:43:40 · 54 阅读 · 0 评论 -
剑指 Offer 35. 复杂链表的复制
【代码】剑指 Offer 35. 复杂链表的复制。原创 2023-09-14 11:22:49 · 104 阅读 · 0 评论 -
剑指 Offer 36. 二叉搜索树与双向链表
【代码】剑指 Offer 36. 二叉搜索树与双向链表。原创 2023-09-14 11:36:58 · 37 阅读 · 0 评论 -
剑指 Offer 37. 序列化二叉树
【代码】剑指 Offer 37. 序列化二叉树。原创 2023-09-15 16:04:30 · 44 阅读 · 0 评论 -
剑指 Offer 38. 字符串的排列
【代码】剑指 Offer 38. 字符串的排列。原创 2023-09-17 18:44:22 · 59 阅读 · 0 评论 -
剑指 Offer 39. 数组中出现次数超过一半的数字
【代码】剑指 Offer 39. 数组中出现次数超过一半的数字。原创 2023-09-17 19:05:59 · 43 阅读 · 0 评论 -
剑指 Offer 40. 最小的k个数
【代码】剑指 Offer 40. 最小的k个数。原创 2023-09-17 20:00:08 · 72 阅读 · 0 评论