【动态规划】买卖股票相关问题

一、买卖股票的最佳时机含手续费

714. 买卖股票的最佳时机含手续费

题目描述:

题目分析:

1、状态分析

其实一共就只有两种状态,不是处于 持有 状态,就是处于 未持有 状态。

  • f[i]表示第i天结束后,处于 持有 状态时,最大的利润
  • g[i]表示第i天结束后,处于 未持有 状态时,最大的利润

2、状态转移方程

对于f[i],有两种情况可以到达这种状态:

  • 在第 i-1 天时就已处于 持有 状态,然后第 i 天啥也不干,仍然保持 持有 状态。此时的最大利润就为 f[i - 1] 
  • i - 1 天的时候「未持有」股票,在第 i 天买⼊股票。此时最⼤收益为 g[i - 1] - prices[i]) 
可知 f[i] 就为以上两种情况下的最大值,即 
f[i] = max(f[i - 1], g[i - 1] - prices[i])

对于g[i],也有两种情况能够到达这种状态:

  • i - 1 天「持有」股票,但是在第 i 天将股票卖出。此时最⼤收益为: f[i - 1]
    + prices[i] - fee) ,记得⼿续费
  • i - 1 天「未持有」股票,然后第 i 天啥也不⼲。此时最⼤收益为: g[i - 1] ;

可知 g[i] 就为以上两种情况下的最大值,即 

评论 43
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值