![](https://img-blog.csdnimg.cn/7086a5486d1447d699659a69e8b7d3e5.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
递归
文章平均质量分 84
递归
呵呵哒( ̄▽ ̄)"
喜欢分享学习笔记,并不一定是正确的,阶段性的学习成果做一下记录,欢迎一起交流讨论,也希望有错误的地方可以向我提出,我会虚心接受并纠正
展开
-
leetCode 1026. 节点与其祖先之间的最大差值 + 递归
(如果 A 的任何子节点之一为 B,或者 A 的任何子节点是 B 的祖先,那么我们认为 A 是 B 的祖先)在所有可能的差值中,最大值 7 由 |8 - 1| = 7 得出。对于一条从根出发向下的路径,实际上算的是这条路径上。故,无需记录递归路径中的全部节点值,,在递归到终点时才去更新答案。,那么从根到叶子的路径上。无需每个节点都去更新答案。是从根到叶子的路径上的。原创 2023-11-25 18:54:29 · 533 阅读 · 0 评论 -
leetCode 226.翻转二叉树 递归 + 非递归 + 前中后序 + 层序遍历 【深度和广度优先遍历】
leetCode 226.翻转二叉树-CSDN博客。原创 2023-11-25 13:49:05 · 599 阅读 · 0 评论 -
leetCode 226.翻转二叉树
也可以简洁写成:root.left,root.right = right,left。也可以简洁写成:swap(root->left,root->right);,翻转这棵二叉树,并返回其根节点。给你一棵二叉树的根节点。原创 2023-11-25 13:27:04 · 472 阅读 · 0 评论 -
leetCode 100. 相同的树 和 leetCode 101. 对称二叉树 和 110. 平衡二叉树 和 199. 二叉树的右视图
leetCode 100. 相同的树 和 leetCode 101. 对称二叉树 和 110. 平衡二叉树 和 199. 二叉树的右视图原创 2023-11-24 21:31:53 · 401 阅读 · 0 评论 -
树形 DP:树的直径
124. 二叉树中的最大路径和 https://leetcode.cn/problems/binary-tree-maximum-path-sum/solution/shi-pin-che-di-zhang-wo-zhi-jing-dpcong-n9s91/543. 二叉树的直径 https://leetcode.cn/problems/diameter-of-binary-tree/solution/shi-pin-che-di-zhang-wo-zhi-jing-dpcong-taqma/原创 2023-11-24 19:48:58 · 949 阅读 · 0 评论 -
leetCode 2925. 在树上执行操作以后得到的最大分数 + 正则难反 + 树形 DP
根节点的值是非 0 的。你的得分之和为 values[1] + values[2] + values[3] + values[4] + values[5] = 11。思路分析:题目中“如果从根节点出发,到任意叶子节点经过的路径上的节点值之和都不等于 0”。所在在执行操作时,每条从根节点到叶子节点的路径上,都存在一个节点不去操作(多条路径可能共用一个不操作的节点)如果从根节点出发,到任意叶子节点经过的路径上的节点值之和都不等于 0 ,那么我们称这棵树是。- 从 0 到 5 的节点值之和为 3。原创 2023-11-23 17:19:48 · 270 阅读 · 0 评论 -
递归和master公式 系统栈 + 计算时间复杂度
2)从实际上理解递归:递归不是玄学,底层是利用。任何递归函数都一定可以改成非递归。),自己压栈呗(内存空间)所有子问题规模相同的递归。是非常重要的,有利于。,不用系统帮你压栈(5)master公式。原创 2023-11-12 10:12:46 · 154 阅读 · 0 评论 -
leetCode 493 翻转对 归并分治 + 图解
归并排序 merge Sort + 图解 + 递归 / 非递归-CSDN博客。归并分治 归并排序的应用 + 图解 + 笔记-CSDN博客。算法讲解022【必备】归并分治_哔哩哔哩_bilibili。归并排序 图解 递归 + 非递归 + 笔记-CSDN博客。你需要返回给定数组中的重要翻转对的数量。原创 2023-11-11 17:32:51 · 179 阅读 · 0 评论 -
归并排序 merge Sort + 图解 + 递归 / 非递归
个长度为 4 的有序子序列(最后一个有序序列的长度可能小于4),以此类推,直至得到一个长度为 n 的有序序列。的解决:在一趟归并中,除最后一个有序序列外,其他有序序列中记录的个数(称为序列长度)相同,用。个长度为 2 的有序子序列(最后一个有序序列的长度可能是1),再进行。的解决:开始时,有序子序列的长度为1,结束时,有序子序列的长度为。因此,可以用有序子序列的长度来控制排序过程的结束。,这是归并排序算法最好,最坏,平均的时间性能。现在的任务是把若干个相邻的长度为。待合并的两个相邻的有序子序列的长度均为。原创 2023-11-11 17:08:23 · 602 阅读 · 0 评论 -
归并分治 计算数组的小和 + 图解 + 笔记
算法讲解022【必备】归并分治_哔哩哔哩_bilibili。归并排序 图解 递归 + 非递归 + 笔记-CSDN博客。计算数组的小和__牛客网 (nowcoder.com)所有原创 2023-11-10 20:00:16 · 342 阅读 · 0 评论 -
归并排序 图解 递归 + 非递归 + 笔记
不要浪费时间去学。因为原地归并排序确实可以省空间,但是会把复杂度变成。算法讲解021【必备】归并排序_哔哩哔哩_bilibili。左部分排好序,右部分排好序。注意:有些资料说可以用。原创 2023-11-10 18:22:57 · 718 阅读 · 1 评论 -
leetCode 416.分割等和子集 + 01背包 + 动态规划 + 记忆化搜索 + 递推 + 空间优化
LeetCode 416.分割等和子集(动态规划【0-1背包问题】采用一维数组dp:滚动数组)_呵呵哒( ̄▽ ̄)"的博客-CSDN博客。利用memset 赋值无穷大和无穷小_如何使用memset函数初始化数组的值为无穷小_Prudento的博客-CSDN博客。0-1背包 完全背包 + 至多/恰好/至少 + 空间优化 + 常见变形题(实战力扣题)-CSDN博客。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。,这是解决动态规划问题的关键。:根据递归的边界来初始化。(3)1:1 翻译成。原创 2023-11-04 22:40:40 · 244 阅读 · 0 评论 -
leetCode 322.零钱兑换 完全背包 + 动态规划 + 记忆化搜索 + 递推 + 空间优化 + 画递归树
在上面的递归树中,可以看到有许多子问题被多次计算。例如,F(1)被计算了13次。为了避免重复的计算,可以将每个子问题的答案存在一个数组中进行记忆化,如果下次还要计算这个问题的值直接从数组中取出返回即可,这样能保证每个子问题最多只被计算一次。0-1背包 完全背包 + 至多/恰好/至少 + 空间优化 + 常见变形题(实战力扣题)-CSDN博客。LeetCode 322.零钱兑换 完全背包 + 动态规划_呵呵哒( ̄▽ ̄)"的博客-CSDN博客。最优解可以从其子问题的最优解构造出来。,这是解决动态规划问题的关键。原创 2023-11-04 16:26:34 · 222 阅读 · 0 评论 -
leetCode 494. 目标和 + 动态规划 + 记忆化搜索 + 递推 + 空间优化
LeetCode 494.目标和 (动态规划 + 性能优化)二维数组 压缩成 一维数组_呵呵哒( ̄▽ ̄)"的博客-CSDN博客。返回可以通过上述方法构造的、运算结果等于 target。,然后串联起所有整数,可以构造一个。向数组中的每个整数前添加 '+'和一个整数 target。原创 2023-11-04 12:39:09 · 200 阅读 · 0 评论 -
LCR 166.珠宝的最高价值 + 动态规划 + 记忆化搜索 + 递推 + 空间优化
除非这个架子上没有任何珠宝,比如 frame = [[0]]LCR 166. 珠宝的最高价值 - 力扣(LeetCode)解决方案:在 f 数组的上边和左边各加一排,的珠宝架,其中 frame[i][j]为该位置珠宝的价值。(2)递归搜索 + 保存计算结果 =由于每个状态只会计算一次,状态个数为。现有一个记作二维矩阵 frame。注意:珠宝的价值都是。,单个状态的计算时间为。原创 2023-11-03 19:35:52 · 279 阅读 · 0 评论 -
leetCode 213. 打家劫舍 II + 动态规划 + 从记忆化搜索到递推 + 空间优化
leetCode 213. 打家劫舍 II 动态规划 房间连成环怎么偷呢?_呵呵哒( ̄▽ ̄)"的博客-CSDN博客。_呵呵哒( ̄▽ ̄)"的博客-CSDN博客。leetCode 198.打家劫舍 动态规划 + 优化空间复杂度_呵呵哒( ̄▽ ̄)"的博客-CSDN博客。你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。,这意味着第一个房屋和最后一个房屋是紧挨着的。同时,相邻的房屋装有相互连通的防盗系统,leetCode 198.打家劫舍 动态规划入门:从记忆化搜索到递推-CSDN博客。原创 2023-11-02 23:00:34 · 290 阅读 · 0 评论 -
leetCode 746. 使用最小花费爬楼梯 + 记忆化搜索 + 递推 + 动态规划 + 空间优化
LeetCode 70.爬楼梯 + 记忆化搜索 + 递推 + 动态规划 + 空间优化-CSDN博客。leetCode 198.打家劫舍 动态规划入门:从记忆化搜索到递推-CSDN博客。leetCode 746. 使用最小花费爬楼梯 动态规划-CSDN博客。leetCode 746. 使用最小花费爬楼梯 动态规划-CSDN博客。(2)递归搜索 + 保存计算结果 = 记忆化搜索。(3)1:1 翻译成递推。(1) 递归(超时)原创 2023-11-02 22:56:53 · 165 阅读 · 0 评论 -
LeetCode 70.爬楼梯 + 记忆化搜索 + 递推 + 动态规划 + 空间优化
leetCode 70.爬楼梯 动态规划_呵呵哒( ̄▽ ̄)"的博客-CSDN博客。(2)递归搜索 + 保存计算结果 = 记忆化搜索。(3)1:1 翻译成递推。(1) 递归(超时)原创 2023-11-02 22:07:02 · 162 阅读 · 0 评论 -
leetCode 2915. 和为目标值的最长子序列的长度 + 动态规划 +01背包 + 空间优化 + 记忆化搜索 + 递推
指的是从原数组中删除一些或者不删除任何元素后,剩余元素保持原来的顺序构成的数组。leetCode 198.打家劫舍 动态规划入门:从记忆化搜索到递推-CSDN博客。2915. 和为目标值的最长子序列的长度 - 力扣(LeetCode)这样就可以先将子问题解决掉,然后反过来解决较大的子问题。动态规划入门:从记忆化搜索到递推_哔哩哔哩_bilibili。来再次找到子子问题与子问题的联系。,确定子问题与原问题的联系。子问题又可以通过同样的。116双周赛T3复盘_哔哩哔哩_bilibili。原创 2023-11-02 18:25:46 · 372 阅读 · 0 评论 -
leetCode 198.打家劫舍 动态规划入门:从记忆化搜索到递推
选 或 不选选哪个对于这个题,先把它看做是一道回溯题要把一个大问题变成一个规模更小的子问题,从第一个房子或者最小一个房子开始思考,是最容易的,因为它们受到的约束是最小的。比如考虑最后一个房子「选」还是「不选」,如果「不选」,那么问题就变成个房子的问题。如果选,问题就变成个房子的问题,不断这样去思考,就可以得到一棵搜索树了。(二)回溯由于在选的情况下,相邻的房子是不能选的,所以这里直接递归到个房子,把刚才的思考过程再抽象一下:当我们枚举到第个房子「选」或「不选」的时候,就确定了递归参数中的。原创 2023-11-02 14:07:12 · 393 阅读 · 0 评论 -
LeetCode 509 斐波那契数(动态规划)+ 入门问题
leetCode 746. 使用最小花费爬楼梯 + 记忆化搜索 + 递推 + 动态规划 + 空间优化-CSDN博客。LeetCode 70.爬楼梯 + 记忆化搜索 + 递推 + 动态规划 + 空间优化-CSDN博客。动态递推公式 : dp[i] = dp[i-1] + dp[i-2];开始,后面的每一项数字都是前面两项数字的和。代码随想录 (programmercarl.com)1.确定dp数组以及下标的含义。表示)形成的序列称为。3.dp数组如何初始化。,那么遍历的顺序一定是。5.举例推导dp数组。原创 2023-09-26 22:03:07 · 154 阅读 · 0 评论