动规基础
基础
c葱c
这个作者很懒,什么都没留下…
展开
-
leetcode 96.不同的二叉搜索树
解释不太清,大概意思上就是,可以由n = 1 和 n = 2 推导出 n = 3 的情况。i - j : 表示的是 以 j 为根结点的 右子树 一共有多少种。j - 1 : 表示的是 以 j 为根结点的 左子树 一共有多少种。dp [ 0 ] = 1 把 空树 也当作时一种二叉搜索树。值:表示整数 0 - i 可以组成多少种二叉树。下标:表示 整数 i。4. 遍历顺序,从小到大。1. dp数组的含义。原创 2023-04-24 11:46:42 · 54 阅读 · 0 评论 -
leetcode 343. 整数拆分
注意在写代码的时候,求最大值,需要将dp [ i ] 包括进去,因为它会记录下每次的最大值,需要更新的话,需要与它比较。2. dp [ i - j] * dp [ j ] 拆分成 三个 及其三个以上 拆分 j 和 i - j。dp [ 0 ] dp[ 1 ] 都是不能被拆分的 ,所以初始化没有意义。1. j *( i - j ) 拆分成两个数,j 是其中一个因数。第一层循环是 需要被拆分的整数。值:表示 被拆分之后 的乘积。下标:表示需要被拆分的整数。第二层循环时 寻找质因数。原创 2023-04-24 10:57:26 · 441 阅读 · 0 评论 -
leetcode 63. 不同路径 II
只有当 i,j 不是 障碍,才可以从其它的地方走到 i,j。遇到 1 就退出,不进行初始化了。由给出的参数得到dp所需要的 m n。原创 2023-04-22 13:14:56 · 28 阅读 · 0 评论 -
leetcode 62.不同路径
初始化最左边和最上面的元素,因为 要向右 / 下 走,是由左和上推出来的。由于只能向右走,或者向下走,所以走到 i,j的方法有两种。值: 走到i ,j 的方法有多少种。下标: 表示i , j 的方式。1. dp数组 下标及其 值 的含义。原创 2023-04-22 12:11:36 · 39 阅读 · 0 评论 -
leetcode 746. 使用最小花费爬楼梯
cost[ i ] 是第 i 阶 需要向上爬的费用,可以选择爬 一阶 或者 两阶。走一步 花费 cost[ i - 1]走两步花费 cost[ i - 2]1. 走一步 dp[i - 1]2. 走两步 dp[i - 2]原创 2023-04-21 15:30:41 · 29 阅读 · 0 评论 -
leetcode 509. 斐波那契数 (开始动规噜!
2. 递推公式 dp[ i ] = dp[ i - 1] + dp[ i - 2]1. dp数组的含义就是 需要求的值 , 下标的含义就是对应第 n 个数字。从前向后 / 从后向前 / 双重循环的先后。5. 打印dp数组 用来debug的。1. 确定 dp 数组 和 下标的含义。也可以只有两个元素的数组来维护。3. 初始化题目已经说明了。4.遍历顺序 从前向后。原创 2023-04-21 11:16:01 · 28 阅读 · 0 评论