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

复制代码
https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-ii/description/?envType=study-plan-v2&envId=top-interview-150

问题分析:
和买卖股票的最佳时机I这题相比,区别就是可以买多只股票虽然同时只能持有一支,但是我们还是可以运用贪心的思想只要盈利我就卖出,因为你看 2 4 6 我在2买入4卖出赚2,4买6卖赚2,和2买6卖是一样的,如果 2 6 4,我在6卖出不影响,因为如果后续有大于6的我还能卖,如果没有大于6的那我6的时候卖就是最优的。
java 复制代码
class Solution {
    public int maxProfit(int[] prices) {
        int res = 0;//盈利
        int currPrice = prices[0];//当前持有股票的买入价格
        for(int i = 1; i <= prices.length - 1; i++) {
            if(prices[i] > currPrice) {//如果当前价格大于买入价格,那么我就卖出
                res += prices[i] - currPrice;
                currPrice = prices[i];//更新买入价格
            } else {
                currPrice = prices[i];//如果当前价格小于等于买入价格,那么我就买入,相当于我之前都是当天买当天卖
            }
        }
        return res;
    }
}
相关推荐
不染尘.1 分钟前
二叉树相关题目
开发语言·数据结构·c++·算法
静谧空间11 分钟前
java登录验证码CaptchaConfig
java·开发语言
Imxyk15 分钟前
力扣:632. 最小区间(贪心)
java·数据结构·算法
驱动探索者16 分钟前
linux genpool 学习
java·linux·学习
露天赏雪18 分钟前
JDK8 的入门避坑指南
java·服务器·windows·spring boot·后端·spring·性能优化
jiaguangqingpanda19 分钟前
Day37-20260205
java·开发语言
Mr_Xuhhh20 分钟前
递归和迭代的区别(C/C++实现)
算法
手握风云-20 分钟前
JavaEE 进阶第十六期:MyBatis,查询请求的生命周期全景图(一)
java·java-ee·mybatis
历程里程碑21 分钟前
21:重谈重定义理解一切皆“文件“及缓存区
linux·c语言·开发语言·数据结构·c++·算法·缓存
大模型玩家七七24 分钟前
安全对齐不是消灭风险,而是重新分配风险
android·java·数据库·人工智能·深度学习·安全