摘要: 组合总和Ⅲ leetcode:216. 组合总和 III 回溯法 思路 组合的基础上,在找组合的过程中,把和为N的记录下来。 复杂度分析 时间复杂度:O(C(K,9))。 空间复杂度:空间复杂度主要来自递归调用时维护的栈空间和存储结果的二维数组,分别为O(k) 和O(C(K,9)*K)。 注意点 略 阅读全文
posted @ 2024-02-23 21:58 Tazdingo 阅读(160) 评论(0) 推荐(0)
摘要: 回校补卡~(回来之后反而懒了 回溯理论基础 什么是回溯法 回溯本质上就是穷举,一种纯暴力搜索。 应用 使用原因 问题很复杂,没有更好的办法,只能暴力搜索。 解决的问题 组合问题:N个数里面按一定规则找出k个数的集合 排列问题:N个数按一定规则全排列,有几种排列方式(有序的组合) 切割问题:一个字符串 阅读全文
posted @ 2024-02-23 00:40 Tazdingo 阅读(174) 评论(0) 推荐(0)
摘要: 修剪二叉搜索树 leetcode:669. 修剪二叉搜索树 递归法 思路 和删除搜索树节点类似,递归向上返回子树。 碰到NULL节点,向上抛NULL; 如果值小于左边界,那么当前根节点和左子树都要剪掉,返回递归右子树的结果; 如果值大于右边界,那么当前根节点和右子树都要剪掉,返回递归左子树的结果; 阅读全文
posted @ 2024-02-22 01:32 Tazdingo 阅读(1234) 评论(0) 推荐(0)
摘要: 二叉搜索树的最近公共祖先 leetcode:235. 二叉搜索树的最近公共祖先 递归法 思路 搜索树节点是有序的,若节点值大于p、q则在右子树查询;若节点值小于p、q则在左子树查询;其他情况(节点值在两者之间、节点值等于p值或q值),node就是最近的公共祖先。 复杂度分析 时间复杂度:O(logN 阅读全文
posted @ 2024-02-20 00:08 Tazdingo 阅读(1357) 评论(0) 推荐(0)
摘要: 过外婆八十寿宴,补卡 二叉搜索树的最小绝对差 leetcode:530. 二叉搜索树的最小绝对差 双指针中序遍历法 思路 搜索树的最小绝对差一定出现在中序遍历的相邻两个元素之间。 设置前后两个指针,每次对比“历史最小”与当前node->val - pre->val的值哪个更小,进行相应更新。 复杂度 阅读全文
posted @ 2024-02-19 20:29 Tazdingo 阅读(1363) 评论(0) 推荐(0)
摘要: 过外婆八十寿宴去了,补卡 最大二叉树 leetcode:654. 最大二叉树 递归法 思路 构造二叉树都要用前序遍历:先有根,才有其他。 复杂度分析 时间复杂度:O(N^2)。 空间复杂度:最差时(单调增or减-)O(N)。 注意点 递归时候传入值是变量begin、end而不是写死的。 代码实现 / 阅读全文
posted @ 2024-02-19 00:13 Tazdingo 阅读(1419) 评论(0) 推荐(0)
摘要: 找树左下角的值 leetcode:513. 找树左下角的值 层序迭代法 思路 层序遍历,每次更新result为每层最左侧元素。 复杂度分析 时间复杂度:遍历,O(N)。 空间复杂度:队列层序遍历,树近似完全二叉树时O(N),树极倾斜时O(logN)。 注意点 略 代码实现 /** * Definit 阅读全文
posted @ 2024-02-15 23:25 Tazdingo 阅读(1567) 评论(0) 推荐(0)
摘要: 年假后的第一天,感觉一切回到解放前T T *衡二叉树 leetcode:110. *衡二叉树 后序递归求高度差法 思路 类似104. 二叉树的最大深度,求左右子树的最大深度(后序遍历求该点的最大高度,其实就等于该子树的最大深度) 复杂度分析 时间复杂度:O(N)。 空间复杂度:**衡时树为O(log 阅读全文
posted @ 2024-02-14 23:49 Tazdingo 阅读(1630) 评论(0) 推荐(0)
摘要: 终于熬到了春节假~~有些手感了 深度与高度 深度是从根结点到叶结点的距离;高度是从叶结点到根结点的距离。 深度从上往下(根为1);高度从下往上(叶为1)。 二叉树最大深度 leetcode:104. 二叉树的最大深度 后序递归法 思路 复杂度分析 时间复杂度:O(N)。遍历了一遍。 空间复杂度:和层 阅读全文
posted @ 2024-02-08 23:21 Tazdingo 阅读(1842) 评论(0) 推荐(0)
摘要: 层序遍历 leetcode: 102. 二叉树的层序遍历 107. 二叉树的层序遍历 II 199. 二叉树的右视图 637. 二叉树的层平均值 429. N 叉树的层序遍历 515. 在每个树行中找最大值 116. 填充每个节点的下一个右侧节点指针 104. 二叉树的最大深度 111. 二叉树的最 阅读全文
posted @ 2024-02-07 21:15 Tazdingo 阅读(1800) 评论(0) 推荐(0)