力扣122——买卖股票的最佳时机 II

给定一个整数数组 prices ,其中 prices[i] 表示某支股票第 i 天的价格。
在每一天,你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可以先购买,然后在 同一天 出售。
返回 你能获得的 最大 利润 。
输入:prices = [7,1,5,3,6,4]
输出:7
在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5 - 1 = 4 。
在第 4 天(股票价格 = 3)的时候买入,在第 5 天(股票价格 = 6)的时候卖出, 这笔交易所能获得利润 = 6 - 3 = 3 。
总利润为 4 + 3 = 7 。

解题思路

此处撰写解题思路
对于这道题,最主要的就是先观察利润可以如何产生,就算最大的利润也可以通过前后比较叠加得到。比如 [1 , 3 , 5]中,能够通过2+2从而得到5-1=4这个利润。这样问题就好办了:

1. 首先我们定义一个最终能获得的总利润total

    `int total = 0;`

2. 再在循环中确定每次能获取的叠加部分的利润

   ``int present = 0;``

3. 通过遍历中对前后数据比较,如果数组中前一个数据小于后一个,那么我们就可以累加这一次的利润,最终一次遍历就可以得到我们需要的结果。

        if (prices[i] < prices[i+1]) {present = prices[i+1] - prices[i];total += present;} else {present=0;}

代码

class Solution {public int maxProfit(int[] prices) {int total = 0;for (int i = 0; i < prices.length-1; i++) {int present = 0;if (prices[i] < prices[i+1]) {present = prices[i+1] - prices[i];total += present;} else {present=0;}}return total;}
}

买卖股票的最佳时机 II——力扣122题相关推荐

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

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

  2. Day32——122.买卖股票的最佳时机II 55. 跳跃游戏 45.跳跃游戏II +第二天复习

    赶上进度,冲冲冲 目录 前言 一.买卖股票的最佳时机II 二.跳跃游戏 解题思路: 三.跳跃游戏|| 总结 前言 生命能与世俗相契合,才能不朽,生命的整体是象征的,因为他是有意义的. --<日瓦 ...

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

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

  4. 力扣贪心算法专题(一)455.分发饼干 376. 摆动序列 53. 最大子序和 122.买卖股票的最佳时机II 1005.K次取反后最大化的数组和 思路及C++实现 贪心算法 动态规划

    文章目录 贪心算法 455.分发饼干 思路 步骤 代码 376. 摆动序列 贪心算法 思路 分析 代码 动态规划 思路 步骤 代码 53. 最大子序和 暴力解法 双层for循环 贪心算法 思路 分析 ...

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

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

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

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

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

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

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

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

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

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

最新文章

  1. 延展信息按单制造ERP荣获2012中国软件优秀解决方案奖
  2. DEDE 字符串操作常见问题
  3. android入门--环境搭建
  4. 面试提问vue中v-if与v-show的区别以及使用场景
  5. 远控免杀专题(15)-DKMC免杀
  6. 房地产税迟早要来,而且会带来房价小涨。
  7. python 购物车程序_Python 购物车程序(文件版)
  8. linux 端口 操作
  9. Java代码质量改进之:使用ThreadLocal维护线程内部变量
  10. PHP性能:序——谈ab(Apache Bench)压力测试工具
  11. 系统分析师教程电子版免费下载
  12. 树莓派3B的摄像头模块
  13. HTML5网页设计的基本知识-几个概念
  14. 环境监测神器——智慧环境监测数据可视化平台
  15. 【Linux】gcc编译工具,断点的设置,gdb调试
  16. IP地址中的网络地址和主机地址分别是什么意思
  17. echarts树状图怎么设置主节点和子节点的距离_教你秒懂CAD出图比例正确设置技巧...
  18. iOS-VLCKit实现仿网易云音乐播放音乐
  19. Codeforces Round #657 (Div. 2)B. Dubious Cyrpto
  20. android手机用户,ZDC:2011年Android手机用户使用行为研究报告

热门文章

  1. 常系数齐次线性微分方程
  2. 最新上海阿里巴巴笔试题分享
  3. 读书笔记--《伽利略的苦恼》
  4. 猴痘与非猴痘(水痘、麻疹)的二元分类数据集
  5. linux常用终端命令参数整理
  6. HTB_Preignition 靶机之 Http 协议与目录暴破
  7. unity中如何多屏显示
  8. KB奇遇记(5):十大问题之战
  9. STM32F103—使用通用定时器控制开关
  10. std::map使用std::piecewise_construct std::forward_as_tuple