今天发现leetcode比别的都好。。。因为面试面到121题,我愚笨的脑袋用了两个for循环,只用一个for循环我是想不出的。
121:

class Solution {
public:int maxProfit(vector<int>& prices) {size_t size = prices.size();if(size <= 1)   return 0;int min = INT_MAX, max = INT_MIN;for(int i=0; i<size; i++) {if(min > prices[i]) min = prices[i];if(max < prices[i] - min)   max = prices[i] - min;}return max;}
};

122:

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

123:

class Solution {
public:int maxProfit(vector<int>& prices) {int size = prices.size();if(size <= 1)   return 0;int *ascandMax = new int[size]();int minPrice = prices[0];int maxProf = 0;for(int i=0; i<size; i++) {maxProf = max(maxProf, prices[i]-minPrice);minPrice = min(minPrice, prices[i]);ascandMax[i] = maxProf;}int *descandMax = new int[size]();int maxPrice = prices[size-1];maxProf = 0;for(int i=size-2; i>=0; i--) {maxProf = max(maxProf, maxPrice-prices[i]);maxPrice = max(maxPrice, prices[i]);descandMax[i] = maxProf;}maxProf = 0;for(int i=0; i<size; i++) {maxProf = max(maxProf, ascandMax[i] + descandMax[i]);}delete[] ascandMax;delete[] descandMax;return maxProf;}
};

leetcode121、122、123相关推荐

  1. 力扣121、122、309、714(C语言版)动态规划股票问题

    具体思路看 309. 最佳买卖股票时机含冷冻期 题解 - 力扣(LeetCode) (leetcode-cn.com) 1.买卖股票的最佳时机121(只能一次买卖) 给定一个数组 prices ,它的 ...

  2. android h xh xxh 分辨率,同步带(橡胶)[MXL、XL、L、H、XH、XXH]

    44.45.48.50.52.53.54.55.56.57.59.60.61.62.63.64.65. 67.68.69.70.71.72.73.74.75.76.77.78.79.80.81.82. ...

  3. GHOST的口诀:备份122、还原123

    记住GHOST的口诀:备份122.还原123 具体操作如下: 一.备份操作 在纯DOS下操作.若ghost.exe在D:\ghost文件夹,则: 进入DOS, 1.D:\cd ghost 2.D:\g ...

  4. 21、22、23、53、80、123、161、1433、3306、3389 端口的用途或协议

    21.22.23.53.80.123.161.1433.3306.3389 端口的用途或协议 一.如下 一.如下 21 端口:FTP(File Transfer Protocol)数据传输端口,用于在 ...

  5. 第七篇:爬虫实战— 3、自动登录123并且自动发送邮箱;自动爬取京东商品信息...

    selenium模块 阅读目录 一.介绍 二.安装 三.基本使用 四.选择器 五.等待元素被加载 六.元素交互操作 七.其他 八.练习 一.介绍 selenium最初是一个测试工具,而爬虫中使用它主要 ...

  6. 1、两人做游戏,轮流报数,报出的数只能是1、2、3、4、5、6、7、8其中之一,把两个人报出的数连加起来,谁报数后加起来的和是123,谁就获胜,让你先报,为了确保胜利,你第一个数报多少?

    看到一道奥数题,如下 两人做游戏,轮流报数,报出的数只能是1.2.3.4.5.6.7.8其中之一,把两个人报出的数连加起来,谁报数后加起来的和是123,谁就获胜,让你先报,为了确保胜利,你第一个数报多 ...

  7. _42LeetCode代码随想录算法训练营第四十二天-动态规划 | 121.买卖股票的最佳时机、122.买卖股票的最佳时机II

    _42LeetCode代码随想录算法训练营第四十二天-动态规划 | 121.买卖股票的最佳时机.122.买卖股票的最佳时机II 题目列表 121.买卖股票的最佳时机 122.买卖股票的最佳时机II 1 ...

  8. Windows关闭123、137、138、139、445、1900等端口监听指引

    最近在做等保加固整改相关工作,其中有关闭123.137.138.139.445.1900等非业务必要的端口监听整改要求,关闭方法及其影响整理如下: 端口 描述 服务名称 关闭方法 关闭影响 123 N ...

  9. (123)FPGA面试题-介绍低速接口(UART、IIC、SPI),SPI有几根线,每根线的作用?(三)

    1.1 FPGA面试题-介绍低速接口(UART.IIC.SPI),SPI有几根线,每根线的作用?(三) 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA面试题-介 ...

  10. 122、交换机基本配置命令

    小伙伴们通过Console口登录后还希望远程登录和管理交换机,就可以在交换机上配置Telnet服务功能并使用AAA验证方式登录. 步骤1:从PC1通过交换机Console口登录交换机. 步骤2:配置交 ...

最新文章

  1. 网络卖家自曝黑幕 “信用刷手”欺骗你
  2. flutter 按钮_flutter好用的轮子推荐二-点赞按钮动画
  3. python语法大全-总结了Python中的22个基本语法
  4. 实用小命令-windows下查看端口占用情况
  5. 移动平台游戏网络重连方案
  6. 2017-7-22 NOIP模拟赛
  7. java二叉树生成器_JAVA实现二叉树生成
  8. PDF转Word时提示有密码两种常用解密技巧分享
  9. matlab中除法的错误使用
  10. Android控件 - TextView、Button、EditText、CompoundButton、CheckBox简介
  11. springboot办公OA考勤请假系统java
  12. 安装原生Win7-SP1重要补丁
  13. 河南科技大学计算机学院录取名单,【计算机考研复试通知】2018年河南科技大学硕士研究生复试通知...
  14. 华硕笔记本U盘重装系统教程
  15. 2019 NLP大全:论文、博客、教程、工程进展全梳理(长文预警)
  16. 手机wifi显示连接到服务器地址,手机连接路由器wifi上网总是提示正在获取IP地址怎么办...
  17. 论文分享(一) CVPR 2018 Defense against Universal Adversarial Perturbations
  18. 【文献翻译】Select-Storage: A New Oracle Design Pattern on Blockchain
  19. 【号外】马云这次帮了大忙,银行卡再也不用怕被盗刷!
  20. 全栈开发和web开发_全栈开发人员:这是什么,以及如何成为一个完整的开发人员...

热门文章

  1. 《UNIX网络编程 卷1:套接字联网API(第3版)》——8.2 recvfrom和sendto函数
  2. nginx + lua 构建网站防护waf(一)
  3. HDU1426(DFS)
  4. 【职场攻略】比你的工资更重要的十件事
  5. Apache PDFBox 1.8.1 发布
  6. 数据结构实验3-带头结点的单链表
  7. md(Markdown)文件编辑
  8. 总结之Unix的基础知识
  9. 多精度数带余除法_算法笔记 (一) 高精度
  10. 【CF1107G】Vasya and Maximum Profit(单调栈/单调栈+线段树最大子段和)