摘要:
##123.买卖股票的最佳时机III 题目|文章 ####思路 相比于122.买卖股票的最佳时机III,这道题多了一道限制,就是买卖次数的限制,我的想法是通过增加一维来实现。文章中给出的方法则更加简单,将各种状态全部列出来,用二维数组就可以实现。 点击查看代码 class Solution { pu 阅读全文
摘要:
##121. 买卖股票的最佳时机 题目|文章 ####思路 这道题可以用贪心算法和暴力解决,在此不讨论,只考虑动态规划的做法。 数组以及下标含义。 dp[i][0]:手上持有股票时所能得到的最大金额 dp[i][1]:手上没有持有股票时所能得到的最大金额 理解这个含义的关键在于,dp[j][0]只考 阅读全文
摘要:
##198.打家劫舍 题目|文章 ####思路 数组以及下标含义 dp[j]:当偷到第j家时所能获得的最多的金钱 递推公式 dp[j] = max(dp[j - 1], dp[j - 2] + nums[i]) 当偷到第j家时,如果偷这家,那么就不能偷前一家,所能得到的最大金额为dp[j - 2] 阅读全文
摘要:
##39.单词拆分 题目|文章 ####思路 数组以及下标含义 dp[i]:字符串长度为i的话,dp[i]为true,表示可以拆分为一个或多个在字典中出现的单词。 递推关系 如果word出现在列表中,即[j,i]的子串出现在列表中,并且word之前的单词部分为true,那么这个子串为true 3.初 阅读全文
摘要:
##70. 爬楼梯 题目|文章 ####思路 这道题目要求有序,因此是全背包的排列做法。 1.数组下标以及含义 dp[i]:爬到n台阶一共有dp[i]种方法。 2.递推关系 dp[i] += dp[i - j]; 3.初始化 dp[0]=1可以实现递推关系 4.遍历顺序 先遍历背包(n),再遍历物品 阅读全文