leetcode 最佳时机买卖股票2,假设您有一个数组,其中第i个元素是第i天给定股票的价格。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/howe1233/article/details/91146848

假设您有一个数组,其中第i个元素是第i天给定股票的价格。

设计算法以找到最大利润。 您可以根据需要完成尽可能多的交易(即,多次买入并卖出一股股票)。 但是,您可能不会同时进行多笔交易(即,您必须在再次购买之前卖出股票)

思路:根据题意,相当于只要有利益就卖出股票,不断累积利益,直至最后的结果;

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

 

展开阅读全文

没有更多推荐了,返回首页