动态规划
文章平均质量分 59
KazeHelloWorld
这个作者很懒,什么都没留下…
展开
-
动态规划专题
动态规划139.单词拆分 139.单词拆分 给定一个非空字符串 s 和一个包含非空单词的列表 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。 说明: 拆分时可以重复使用字典中的单词。 你可以假设字典中没有重复的单词。 class Solution: def wordBreak(self, s: str, wordDict: List[str]) -> bool: dp = [False]*(len(s)+1) dp[0] = Tr原创 2021-07-17 21:01:55 · 184 阅读 · 0 评论 -
买卖股票的最佳时机
买卖股票的最佳时机买卖股票的最佳时机 II买卖股票的最佳时机 III 买卖股票的最佳时机 II 给定一个数组 prices ,其中 prices[i] 是一支给定股票第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 动态规划: 一维:交易日期,价格数组长度 二维:两种状态:持有或现金 class Solution: def maxProfit(self, price原创 2021-07-15 22:00:07 · 163 阅读 · 1 评论 -
连续乘积子数组
总结: 对于乘积数组,常用方法为保存最大最小两个值,遇到负值就交换 152.乘积最大子数组 给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。 乘以一个负数,最大最小发生转换,所以维护保存最大最小值,每次遇到负数,最大乘以负数变成最小, 最小乘以负数变成最大 class Solution: def maxProduct(self, nums: List[int]) -> int: max_pro = nu原创 2021-07-12 19:15:14 · 388 阅读 · 0 评论 -
918. 环形子数组的最大和
918. 环形子数组的最大和 给定一个由整数数组 A 表示的环形数组 C,求 C 的非空子数组的最大可能和。 在此处,环形数组意味着数组的末端将会与开头相连呈环状。(形式上,当0 <= i < A.length 时 C[i] = A[i],且当 i >= 0 时 C[i+A.length] = C[i]) 此外,子数组最多只能包含固定缓冲区 A 中的每个元素一次。(形式上,对于子数组 C[i], C[i+1], …, C[j],不存在 i <= k1, k2 <= j 其中 k原创 2021-07-11 15:32:29 · 101 阅读 · 0 评论 -
55. 跳跃游戏 & 45. 跳跃游戏 II
跳跃游戏跳跃游戏 跳跃游戏 给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标。 思路: 每次保存能最远到达的位置,如果当前位置大于最远位置,提前返回,否则每次更新最远距离 class Solution: def canJump(self, nums: List[int]) -> bool: max_length = 0 for i in range(len(nu原创 2021-07-10 20:57:32 · 93 阅读 · 0 评论 -
打家劫舍
198.打家劫舍 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。 思路: 动态规划,子问题每次查看当前值与跳一格值和与前一格值比较,每个位置保存当前及之前的最大值 class Solution: def rob(self, nums: List[int])原创 2021-07-09 16:40:58 · 73 阅读 · 0 评论 -
509. 斐波那契数 & 322. 零钱兑换
动态规划专题1斐波那契数零钱兑换 动态规划专题讲解 动态规划思路: 明确 base case -> 明确「状态」-> 明确「选择」 -> 定义 dp 数组/函数的含义。 代码改进方向: 暴力递归 -> 带备忘录的递归-> dp数组迭代 斐波那契数 斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。 动态规划dp数组: class Solution: def fib(self, n: in原创 2021-07-08 14:25:18 · 61 阅读 · 0 评论