代码随想录算法训练营第50天|动态规划part11

8.16周三

  • 123.买卖股票的最佳时机III
  • 188.买卖股票的最佳时机IV

详细布置

123.买卖股票的最佳时机III

题目:最多买卖两次

题解:
1、

dp[i][0]没有操作 (其实我们也可以不设置这个状态)

dp[i][1]第一次持有股票

dp[i][2]第一次不持有股票

dp[i][3]第二次持有股票

dp[i][4]第二次不持有股票

2、

达到dp[i][1]状态,有两个具体操作:

  • 操作一:第i天买入股票了,那么dp[i][1] = dp[i-1][0] - prices[i]
  • 操作二:第i天没有操作,而是沿用前一天买入的状态,即:dp[i][1] = dp[i - 1][1]

188.买卖股票的最佳时机IV

题目:2次买卖变为最多k次买卖

题解:

1、三维数组:

dp[i][j][0]第j次持有股票

dp[i][j][1]第j次不持有股票

2、两重循环

相关推荐
zzzsde7 分钟前
【C++】C++11(1):右值引用和移动语义
开发语言·c++·算法
sheeta19983 小时前
LeetCode 每日一题笔记 日期:2025.11.24 题目:1018. 可被5整除的二进制前缀
笔记·算法·leetcode
gfdhy9 小时前
【c++】哈希算法深度解析:实现、核心作用与工业级应用
c语言·开发语言·c++·算法·密码学·哈希算法·哈希
百***06019 小时前
SpringMVC 请求参数接收
前端·javascript·算法
一个不知名程序员www10 小时前
算法学习入门---vector(C++)
c++·算法
云飞云共享云桌面10 小时前
无需配置传统电脑——智能装备工厂10个SolidWorks共享一台工作站
运维·服务器·前端·网络·算法·电脑
福尔摩斯张10 小时前
《C 语言指针从入门到精通:全面笔记 + 实战习题深度解析》(超详细)
linux·运维·服务器·c语言·开发语言·c++·算法
橘颂TA10 小时前
【剑斩OFFER】算法的暴力美学——两整数之和
算法·leetcode·职场和发展
xxxxxxllllllshi11 小时前
【LeetCode Hot100----14-贪心算法(01-05),包含多种方法,详细思路与代码,让你一篇文章看懂所有!】
java·数据结构·算法·leetcode·贪心算法