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

韩国建筑网站海门网站开发

韩国建筑网站,海门网站开发,物流平台,信息流投放文章目录 动态规划理论基础动规五部曲:出现结果不正确: 1. 买卖股票的最佳时机2. 买卖股票的最佳时机Ⅱ 动态规划理论基础 动规五部曲: 确定dp数组 下标及dp[i] 的含义。递推公式:比如斐波那契数列 dp[i] dp[i-1] dp[i-2]。初…

文章目录

      • 动态规划理论基础
        • 动规五部曲:
        • 出现结果不正确:
      • 1. 买卖股票的最佳时机
      • 2. 买卖股票的最佳时机Ⅱ

动态规划理论基础

动规五部曲:
  1. 确定dp数组 下标及dp[i] 的含义。
  2. 递推公式:比如斐波那契数列 dp[i] = dp[i-1] + dp[i-2]。
  3. 初始化dp数组。
  4. 确定遍历顺序:从前到后or其他。
  5. 打印。
出现结果不正确:
  1. 打印dp日志和自己想的一样:递推公式、初始化或者遍历顺序出错。
  2. 打印dp日志和自己想的不一样:代码实现细节出现问题。

1. 买卖股票的最佳时机

参考文档:代码随想录

分析:
买卖只有一次
dp五部曲:

  1. dp[i]含义:dp[i][0]表示持有i手里的现金,dp[i][1]表示不持有i手里的现金。
  2. 递推公式:dp[i][0] = max(dp[i-1][0], 0 - prices[i]); dp[i][1] = max(dp[i-1][1], dp[i-1][0] + prices[i]);
  3. 初始化:dp[0][0] = -prices[0]; dp[0][1] = 0;
  4. 遍历顺序:从小到大。

代码:

class Solution {
public:int maxProfit(vector<int>& prices) {//dp[i][0]:持有i股手里的钱//dp[i][1]:不持有i股手里的钱vector<vector<int>> dp(prices.size(), vector<int>(2,0));dp[0][0] = -prices[0];dp[0][1] = 0;for(int i = 1; i < prices.size(); i++){//第一次写的是:dp[i][0] = max(dp[i-1][0], dp[i-1][1]-prices[i])//但是股票只能买一次,所以当前的持有是 前一个的持有 和 现在买一个 的最大值dp[i][0] = max(dp[i-1][0], -prices[i]);dp[i][1] = max(dp[i-1][1], dp[i-1][0]+prices[i]);}return max(dp[prices.size()-1][0], dp[prices.size()-1][1]);}
};

2. 买卖股票的最佳时机Ⅱ

参考文档:代码随想录

分析:
买卖次数是不限的,之前有用贪心做过,这次用动态规划。
dp五部曲:

  1. dp[i]含义:dp[i][0]表示持有i手里的现金,dp[i][1]表示不持有i手里的现金。
  2. 递推公式: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][0] + prices[i]);
  3. 初始化:dp[0][0] = -prices[0]; dp[0][1] = 0;
  4. 遍历顺序:从小到大。

代码:

class Solution {
public:int maxProfit(vector<int>& prices) {//dp[i][0]:i股持有手里的现金,i-1股也持有,i-1股不持有i股重新买入(设计多次买入和一次手中只有一股股票)//dp[i][1]:i股不持有手里的现金:i-1股也不持有,现金不变,i-1股持有i不持有卖出i-1买入i股vector<vector<int>> dp(prices.size(), vector<int>(2,0));dp[0][0] = -prices[0];dp[0][1] = 0;for(int i = 1; i < prices.size(); i++){dp[i][0] = max(dp[i-1][0], dp[i-1][1]-prices[i]);//i-1股持有,i股不持有,i股抛出,收益prices[i], dp[i-1][0]+prices[i]dp[i][1] = max(dp[i-1][1], dp[i-1][0]+prices[i]);}return max(dp[prices.size()-1][0], dp[prices.size()-1][1]);}
};
http://www.yayakq.cn/news/279425/

相关文章:

  • 罗湖做网站公司排名太原做网站哪里好
  • 网站建设推广途径网站兼容性怎么调
  • 西宁网站建设方案国外 设计 网站
  • 软文网站推广谷歌关键词搜索排名
  • 如何做网站的注册页面WordPress室内净化主题
  • 网站制作哈尔滨html网站开发工具有哪些
  • 如皋电子商城网站建设faq插件 wordpress
  • 男人和男人做爰漫画网站小网站的制作
  • 中国建设教育协会是个什么网站青浦网络公司网站
  • 网站建设情况通报wordpress页面的排序
  • 企业营销网站制作一级建造师找工作网站
  • 网站界面设计尺寸做网站页面一般设置多大尺寸
  • windows系统做ppt下载网站网站备案密码能改吗
  • 仿qq网站程序做任务赚佣金的平台
  • 企业网站管理系统破解版做网站编辑需要经验吗
  • 郑州门户网站制作徐州做网站软件
  • 四川省建设厅网站电话网站换域名怎么做
  • 网站互点可以自己点么珠海品牌网站制作服务
  • 高端网站设计费用有api对接文档怎么做网站
  • 游戏网站代码太原网页设计师招聘信息
  • 郑州鹏之信网络科技有限公司seo发布专员招聘
  • 网页设计模板网站推荐常用的网页制作软件有
  • 建设400官方网站手工制作大全折纸
  • 辽宁模板网站建设公司wordpress移动端导航栏
  • 韩雪冬个人网站 北京企业网站营销的实现方式解读
  • 做外贸网站报价单网站建设实力宣传海报
  • 为企业开发网站seo外链工具源码
  • 建设银行信用卡被钓鱼网站骗了15000个人购买域名做企业网站
  • 网站商城系统wordpress 用户组
  • 网站开发发布孝感网站制作公司