假设有一个数组,它的第i个元素是一个给定的股票在第i天的价格。设计一个算法来找到最大的利润。你可以完成尽可能多的交易(多次买卖股票)。然而,你不能同时参与多个交易(你必须在再次购买前出售股票)。

给出一个数组样例[2,1,2,0,1], 返回 2

本来的想法是卡住一位,找之后最大的一个然后相减。

后来看了别人的解法之后发现没必要,在一天内可以同时买入卖出,比如说[1,2,3,4,5,6]这种情况,可以6-1=5,也可以2-1+3-2+...+6-5=5,结果是一样的,没必要搞得很复杂。

1 int maxProfit(vector<int> &prices) {
2     // write your code here
3     int profit = 0;
4     for (int i = 1; i < prices.size(); ++i) {
5         if (prices[i] > prices[i - 1])
6             profit += prices[i] - prices[i - 1];
7     }
8     return profit;
9 }

转载于:https://www.cnblogs.com/TheLaughingMan/p/8063367.html

150. 买卖股票的最佳时机 II相关推荐

  1. LintCode领扣算法问题答案:150. 买卖股票的最佳时机 II

    150. 买卖股票的最佳时机 II 描述 给定一个数组 prices 表示一支股票每天的价格. 你可以完成任意次数的交易, 不过你不能同时参与多个交易 (也就是说, 如果你已经持有这支股票, 在再次购 ...

  2. 力扣 买卖股票的最佳时机II

    力扣 买卖股票的最佳时机II 题目描述 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格. 设计一个算法来计算你所能获取的最大利润.你可以尽可能地完成更多的交易(多次买卖一支股票). 注 ...

  3. 2、买卖股票的最佳时机 II

    2.买卖股票的最佳时机 II 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格. 设计一个算法来计算你所能获取的最大利润.你可以尽可能地完成更多的交易(多次买卖一支股票). 注意:你不能 ...

  4. 力扣刷题day42|121买卖股票的最佳时机、122买卖股票的最佳时机II

    文章目录 121. 买卖股票的最佳时机 贪心思路 动态规划思路 动态规划五部曲 122. 买卖股票的最佳时机II 贪心思路 动态规划思路 动态规划五部曲 121. 买卖股票的最佳时机 力扣题目链接 给 ...

  5. 122. 买卖股票的最佳时机 II

    121. 买卖股票的最佳时机 122. 买卖股票的最佳时机 II 123. 买卖股票的最佳时机 III 188. 买卖股票的最佳时机 IV 309. 最佳买卖股票时机含冷冻期 714. 买卖股票的最佳 ...

  6. 算法训练Day49 | Leetcode121. 买卖股票的最佳时机(只能买卖一次);LeetCode122. 买卖股票的最佳时机II(可以买卖多次)

    目录 Leetcode121. 买卖股票的最佳时机 方法一:暴力解法 1. 思路 2. 代码实现 3. 复杂度分析 4. 思考与收获 方法二:贪心算法 1. 思路 2. 代码实现 3. 复杂度分析 方 ...

  7. JavaScript买卖股票的最佳时机 II

    买卖股票的最佳时机 II 前言 1.什么是贪心算法 2.LeetCode题目 3.解法 4.代码实现 总结 前言 1.什么是贪心算法 贪心法,又称贪心算法,贪婪算法,在对问题求解时,总是做出在当前看来 ...

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

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

  9. _28LeetCode代码随想录算法训练营第二十八天-贪心算法 | 122.买卖股票的最佳时机II 、55.跳跃游戏、45.跳跃游戏II

    _28LeetCode代码随想录算法训练营第二十八天-贪心算法 | 122.买卖股票的最佳时机II .55.跳跃游戏.45.跳跃游戏II 题目列表 122.买卖股票的最佳时机II 55.跳跃游戏 45 ...

  10. 代码随想录算法训练营第三十二天_第八章_贪心算法 | 122.买卖股票的最佳时机II、55. 跳跃游戏、45.跳跃游戏II

    LeetCode 122.买卖股票的最佳时机II 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格.设计一个算法来计算你所能获取的最大利润.你可以尽可能地完成更多的交易(多次买卖一支股票 ...

最新文章

  1. python路径拼接os.path.join()函数的用法
  2. 【干货】嘿,产品经理 ,这些技术是一定要懂的
  3. git submoule 更新_微软Surface Duo双屏手机键盘更新:支持分体式输入
  4. MVP+WCF+三层结构搭建项目框架(上)
  5. ASP.NET学习笔记 —— 一般处理程序之图片上传
  6. python函数执行shell_6方法,python中执行shell命令
  7. 零基础入门深度学习(7) - 递归神经网络
  8. react-native 金币彩带雨下落动画
  9. sweetalert2不相应回车_你还不知道的SketchUp建模小技能
  10. Adobe Originals的可变字体
  11. Swift 使用SwiftyJSON解析JSON数据
  12. H3CSE园区-MSTP
  13. SIP入门(一):建立SIP软电话环境
  14. php生成其他网页截图,php实现网页截图
  15. 【机器学习】经典的机器学习200道面试题(附参考答案)
  16. linuxoracle图形界面无法跳出_Linux 7图形化安装Oracle或者其他软件,打不开图形界面的问题 | 信春哥,系统稳,闭眼上线不回滚!...
  17. 软件测试项目管理系统系统描述
  18. WEB前端:(3)HTML5②超链接及页面内跳转
  19. 【Benewake(北醒)】 单点系列标品介绍
  20. Flutter 项目实战 滚动悬浮导航栏 十五

热门文章

  1. windows服务器性能监控工具、方法及关键指标
  2. golang学习的点点滴滴:if、switch使用
  3. Mac 如何查看电脑的蓝牙版本信息
  4. IntelliJ IDEA 查看类继承关系图,太强大了!
  5. 阿里巴巴分布式消息系统的演进之路
  6. 这些小工具让你的Android开发更高效
  7. delphi 去掉字符串中所有的标点符号_[话俾你知]Python使用正则处理字符串技巧(分割、替换)...
  8. ontological 词根词缀_词根的魅力
  9. 「HDU6583 Typewriter」 - 后缀自动机
  10. PhpStorm之三种视图模式