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

在线制作简历的网站外贸企业网站建设公司价格

在线制作简历的网站,外贸企业网站建设公司价格,建设 信用中国 网站,揭阳百度快照优化排名Leetcode: 121 买卖股票的最佳时机 代码随想录 1、确定下标和含义 dp[i][0]表示当天持有股票所得的最多现金 do[i][1]表示当天不持有股票的最多现金 2、递推公式 (1)如果第i天持有股票即dp[i][0], 那么可以由两个状态推出来 第i-1天就…

 Leetcode: 121 买卖股票的最佳时机

代码随想录

1、确定下标和含义

dp[i][0]表示当天持有股票所得的最多现金

do[i][1]表示当天不持有股票的最多现金

2、递推公式

(1)如果第i天持有股票即dp[i][0], 那么可以由两个状态推出来

  • 第i-1天就持有股票,那么就保持现状,所得现金就是昨天持有股票的所得现金 即:dp[i - 1][0]
  • 第i天买入股票,所得现金就是买入今天的股票后所得现金即:-prices[i]

那么dp[i][0]应该选所得现金最大的,所以dp[i][0] = max(dp[i - 1][0], -prices[i]);

(2)如果第i天不持有股票即dp[i][1], 也可以由两个状态推出来

  • 第i-1天就不持有股票,那么就保持现状,所得现金就是昨天不持有股票的所得现金 即:dp[i - 1][1]

第i天卖出股票,所得现金就是按照今天股票价格卖出后所得现金即:prices[i] + dp[i - 1][0]

同样dp[i][1]取最大的,dp[i][1] = max(dp[i - 1][1], prices[i] + dp[i - 1][0]);

3、初始化

dp[0][0]表示第0天持有股票,此时的持有股票就一定是买入股票了,所以dp[0][0] -= prices[0];

dp[0][1]表示第0天不持有股票,不持有股票那么现金就是0,所以dp[0][1] = 0;

时间复杂度:O(n)

空间复杂度:O(n)

class Solution {
public:int maxProfit(vector<int>& prices) {int len = prices.size();if(len == 0) return 0;vector<vector<int>> dp(len, vector<int>(2));dp[0][0] -= prices[0];dp[0][1] = 0;for(int i = 1; i < len; i++){dp[i][0] = max(dp[i - 1][0], -prices[i]);dp[i][1] = max(dp[i - 1][1], prices[i] + dp[i - 1][0]);}return dp[len - 1][1];//最后肯定卖出}
};

Leetcode: 122 买卖股票的最佳时机II

与上题不同的是,这道题可以反复卖出股票。

所以就体现在状态公式上

如果第i天持有股票即dp[i][0], 那么可以由两个状态推出来

  • 第i-1天就持有股票,那么所得现金就是昨天持有股票的所得现金 即:dp[i - 1][0]
  • 第i天买入股票,所得现金就是昨天不持有股票的所得现金减去今天的股票价格 即:dp[i - 1][1] - prices[i]

(2)如果第i天不持有股票即dp[i][1]的情况, 依然可以由两个状态推出来

  • 第i-1天就不持有股票,那么所得现金就是昨天不持有股票的所得现金 即:dp[i - 1][1]
  • 第i天卖出股票,所得现金就是按照今天股票价格卖出后所得现金即:prices[i] + dp[i - 1][0]

时间复杂度:O(n)

空间复杂度:O(n)

class Solution {
public:int maxProfit(vector<int>& prices) {int len = prices.size();vector<vector<int>> dp(len, vector<int>(2, 0));dp[0][0] -= prices[0];dp[0][1] = 0;for (int i = 1; i < len; i++) {dp[i][0] = max(dp[i - 1][0], dp[i - 1][1] - prices[i]); // 注意这里是和121. 买卖股票的最佳时机唯一不同的地方。dp[i][1] = max(dp[i - 1][1], dp[i - 1][0] + prices[i]);}return dp[len - 1][1];}
};

之前我们用贪心的方法做过这道题,所以可以回顾一下。

http://www.yayakq.cn/news/648544/

相关文章:

  • 如何做视频网站技术指标中建卓越建设管理有限公司网站
  • 漳州本地网站做网站的税是多少
  • 企业网站备案是什么意思php在线编辑器
  • 龙岩网站建设方案书网站哪个做的好
  • 建站模板建网站拓客软件哪个好用
  • xx单位网站建设方案邯郸网站建设策划方案
  • 做网站时如何将前端连接到后台顺德品牌网站建设
  • 一级a做爰片免费网站体验区常德网站建设要点
  • 西安做网站的网络公司手机网站成功案例
  • 福州企业建站软件长裕建设有限公司网站
  • 南京博物馆网站哪家做的wordpress安装数据库错误
  • 做网站经验如何建公司网站的步骤
  • 想学做网站需要学什么工业设计属于什么专业类别
  • 英文网站建设的请示怎么写seo营销推广平台
  • dw做的网站设计昆明专业网络营销公司
  • 网站建设有关要求网站免费广告
  • 织梦网站首页打开慢六年级做网站的软件
  • 网页设计公司哪个济南兴田德润实惠吗网站建设优化公司呼和浩特
  • 网站开发的就业Mac怎么搭建网站开发环境
  • 婚恋网站女生要求男生要一起做淘宝免费高清视频在线观看
  • 做网站可以干嘛阳江招聘网丰多采
  • 网站建设相关网站开发所以浏览器兼容模式
  • wordpress修改wpadmin沈阳网站优化
  • 网站关键词优化排名网站设计师发展方向
  • 盐城网站推广哪家好gif素材网站推荐
  • 婚礼网站模板品牌建设ppt文档下载
  • 免费商城网站制作wordpress4.85版本
  • 乐清建设网站各网站网络营销产品价格策略
  • 做跨境都有哪些网站黄国外网站
  • 应用大全网站网站页面怎样做1920