当前位置: 首页 > news >正文

深圳做棋牌网站建设哪家公司便宜泉州seo按天收费

深圳做棋牌网站建设哪家公司便宜,泉州seo按天收费,做网站 华普花园,世界摄影网站目录 动态规划怎么学? 1. 题目解析 2. 算法原理 1. 状态表示 2. 状态转移方程 3. 初始化 4. 填表顺序 5. 返回值 3. 代码编写 写在最后: 动态规划怎么学? 学习一个算法没有捷径,更何况是学习动态规划, 跟我…

目录

动态规划怎么学?

1. 题目解析

2. 算法原理

1. 状态表示

2. 状态转移方程

3. 初始化

4. 填表顺序

5. 返回值

3. 代码编写

写在最后:


动态规划怎么学?

学习一个算法没有捷径,更何况是学习动态规划,

跟我一起刷动态规划算法题,一起学会动态规划!

1. 题目解析

题目链接:309. 最佳买卖股票时机含冷冻期 - 力扣(Leetcode)

这道题很好理解,其实就是买股票的时候多了一个冷冻期。 

2. 算法原理

1. 状态表示

因为他有三种情况,所以我们也有三种状态表示:

dp[ i ][ 0 ] 表示第 i 天是 “买入” 状态,此时的最大利润。

dp[ i ][ 1 ] 表示第 i 天是 “可卖出” 状态,此时的最大利润。

dp[ i ][ 2 ] 表示第 i 天是 “冷冻” 状态,此时的最大利润。

2. 状态转移方程

我们一个一个分析状态表示:

首先是买入状态,怎么样让第 i 天进入买入状态?

如果 i - 1 天结束是买入状态(买过股票)那就已经是买入状态,

如果 i - 1 天结束是可交易状态(可以卖股票但没买)那只要这天买入,就可以进入买入状态,

如果 i - 1 天结束是冷冻状态(就是卖出的后一天)这样就不能进入买入状态。

然后是冷冻状态,怎么样让第 i 天进入冷冻状态?

如果 i - 1 天结束是买入状态,那只要这天卖出,就能进入冷冻状态,

如果 i - 1 天结束是可交易状态,那只要这天卖了,也能进入冷冻状态,

如果 i - 1 天结束是冷冻状态,那第 i 天结束不可能是冷冻状态,因为没东西可以卖了。

然后是可交易状态,怎么样让第 i 天进入可交易状态?

如果 i - 1 天结束是买入状态,那就不是可交易状态,而是买入状态。

如果 i - 1 天结束是可交易状态,那也只需要啥都不干就是可交易状态,

如果 i - 1 天结束是冷冻状态,那也只需要啥都不干就是可交易状态。

所以我们根据上面的分析来写状态转移方程:

dp[ i ][ 0 ] = max( dp[ i - 1 ][ 0 ],dp[ i - 1 ][ 1 ] - p[ i ] )

dp[ i ][ 1 ] = max( dp[ i - 1 ][ 1 ],dp[ i - 1 ][ 2 ] )

dp[ i ][ 2 ] =  dp[ i - 1 ][ 0 ] + p[ i ]

3. 初始化

我们只需要把 dp[ 0 ][ 0 ] 初始化成 -p[ 0 ] 即可,因为买入了所以最大利润就是一个负值。

4. 填表顺序

从左往右,依次填写三个表即可。

5. 返回值

其实就是:max( dp[ n - 1 ][ 1 ],dp[ n - 1 ][ 2 ] )

第一种买入的情况不考虑,因为都买入了,肯定不会是最大利润。

3. 代码编写

class Solution {
public:int maxProfit(vector<int>& prices) {int n = prices.size();vector<vector<int>> dp(n, vector<int>(3));dp[0][0] = -prices[0];for(int i = 1; i < n; i++) {dp[i][0] = max(dp[i - 1][0], dp[i - 1][1] - prices[i]);dp[i][1] = max(dp[i - 1][1], dp[i - 1][2]);dp[i][2] = dp[i - 1][0] + prices[i];}return max(dp[n - 1][1], dp[n - 1][2]);}
};

写在最后:

以上就是本篇文章的内容了,感谢你的阅读。

如果感到有所收获的话可以给博主点一个哦。

如果文章内容有遗漏或者错误的地方欢迎私信博主或者在评论区指出~

http://www.ds6.com.cn/news/51829.html

相关文章:

  • 创建网站目录权限怎样在网上推广自己的产品
  • 定制网站报价日本shopify独立站
  • 作词做曲网站谷歌外贸平台
  • 12306网站能不能用银河二计算机做服务器啊慢得要死seo行业岗位
  • 网络营销试卷上饶seo博客
  • 网站建设哪家公司好木卢seo教程
  • 天津网站建设模板百度推广怎么收费标准
  • 青岛建设集团建兴工程有限公司莆田seo
  • 网站建设合同管辖互联网广告销售是做什么的
  • 做个卖车票的网站怎么做深圳网络推广优化
  • 什么程序做的网站没有index页面海外aso优化
  • 腾讯企点客服电话武汉seo优化排名公司
  • 沧州网站优化bt磁力搜索引擎索引
  • 建设网站分几个步骤做网站建设优化的公司排名
  • 网站建设项目经理的工作外贸网络推广怎么做
  • 海南省建设培训与注册中心网站推广赚钱的软件排行
  • 上海网站seo外包91永久海外地域网名
  • 在线网站建设机构100大看免费行情的软件
  • jsp做的网站运行都需要什么网站推广的常用方法有哪些?
  • 东莞阳光网论坛免费广州seo
  • 做h5的网站的区别英文站友情链接去哪里查
  • 微信红包封面分销平台嘉兴seo网络推广
  • 网站建设是广告么网站关键字优化技巧
  • 网站开发毕设文档乐清网站建设
  • 艺术品交易网站开发友情链接有哪些作用
  • 青岛网站建设 大公司域名服务器ip地址查询
  • 为什么做游戏网站被封指数基金有哪些
  • 怎么做有趣的短视频网站windows优化大师官方免费
  • wordpress文档可以下载吗关键词优化的五个步骤
  • 网站推广营销怎么做seo网站诊断顾问