96. 不同的二叉搜索树 && 343. 整数拆分 Golang实现
摘要:这两个题目的分析思路是十分类似的。都是进行一个拆分。 1.不同的二叉搜索树 题目描述: 给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回满足题意的二叉搜索树的种数。 示例 1: 输入:n = 3 输出:5 思路分析: 动态规划分析: 确定状态:
阅读全文
01背包问题 Golang实现
摘要:背包问题的分类: 01 背包描述: 有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。 思路分析: 问题核心: 从给定的 𝑛 个物品中,以背包容量 𝑉为约束,寻找一种选择方
阅读全文
62.不同路径 DP动态规划 Golang实现
摘要:题目描述: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径? 输入:m = 3, n = 7 输出:28 示例 2: 输入:m
阅读全文
121. 买卖股票的最佳时机 Golang实现【买卖股票问题】
摘要:题目描述: 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润
阅读全文
115.不同的子序列 Golang实现
摘要:题目描述: 给你两个字符串 s 和 t ,统计并返回在 s 的 子序列 中 t 出现的个数,结果需要对 10^9 + 7 取模。 提示: 1 <= s.length, t.length <= 1000 s 和 t 由英文字母组成 思路分析: 为什么可以用动态规划来解决这个题目呢? 最优子结构:问题可
阅读全文