[LeetCode] 122. Best Time to Buy and Sell Stock II

【原题】 Say you have an array for which the ith element is the price of a given stock on day i.

Design an algorithm to find the maximum profit. You may complete as many transactions as you like (ie, buy one and sell one share of the stock multiple times). However, you may not engage in multiple transactions at the same time (ie, you must sell the stock before you buy again). 【解释】 此为Best Time to Buy and Sell Stock的follow up,这里可以多次买入卖出,但是一次不能持有多支股票,求最多可以赚多少钱。 【思路】 数组中后面的元素的值和前面的值的差若大于0,则加上这个差,直至循环结束。求得的值即为目标值。

可能这里有人会疑问,每次不能持有多支股票,那么遇到递增的情况是否会不合题意。举个栗子:1, 3, 5。我们可以得到的最大价值为4,按照上面的算法刚开始得到2+2,同样也可以得到正确的结果。对于递增序列的话,上面的算法就相当于用递增子序列的最大值减去最小值。

public class Solution {
    public int maxProfit(int[] prices) {
        int max=0;
        for(int i=1;i<prices.length;i++)
                if(prices[i]-prices[i-1]>0)
                    max+=prices[i]-prices[i-1];
        //System.out.println(max);
        return max;
    }
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏desperate633

LeetCode 121. Best Time to Buy and Sell Stock题目Solution

假设有一个数组,它的第i个元素是一支给定的股票在第i天的价格。如果你最多只允许完成一次交易(例如,一次买卖股票),设计一个算法来找出最大利润。 样例 给出一...

573
来自专栏Bingo的深度学习杂货店

Q121 Best Time to Buy and Sell Stock

Say you have an array for which the ith element is the price of a given stock on...

3124
来自专栏Python爬虫与算法进阶

萌新刷题(十三)买卖股票的最佳时机

题目 假设有一个数组,它的第i个元素是一支给定的股票在第i天的价格。如果你最多只允许完成一次交易(例如,一次买卖股票),设计一个算法来找出最大利润。 样例...

2976
来自专栏专知

【专知-关关的刷题日记16】Leetcode 88. Merge Sorted Array

题目 Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as on...

34410
来自专栏菩提树下的杨过

scala 学习笔记(03) 参数缺省值、不定个数参数、类的属性(Property)、泛型初步

继续学习,这一篇主要是通过scala来吐槽java的,同样是jvm上的语言,差距咋就这么大呢? 作为一个有.NET开发经验的程序员,当初刚接触java时,相信很...

2396
来自专栏专知

【Code】关关的刷题日记21——Leetcode 485. Max Consecutive Ones

关小刷刷题 21——Leetcode 485. Max Consecutive Ones 题目 Given a binary array, find the m...

27710
来自专栏数说工作室

1. PRXMATCH () | 提取文本数据,分析师小王初上手!

【SAS Says·扩展篇】分析师小王初上手! | 1. PRXMATCH () 本集目录: 0. 小王初上手 1. 初始PRXMATCH() 2. metac...

2616
来自专栏前端知识分享

第188天:extend拷贝创建对象的原理

671
来自专栏极客慕白的成长之路

C++上机考试试题解析

1612
来自专栏专知

【LeetCode 389】 关关的刷题日记30 Find the Difference

关关的刷题日记30 – Leetcode 389. Find the Difference 题目 Given two strings s and t which...

3287

扫码关注云+社区