[LeetCode] 121. Best Time to Buy and Sell Stock

思路:
两个变量记录最小价钱和最大盈利, 遍历整个数组, 如果当前这个数大于前面的数, 说明肯定至少有一次增长, 此时求一下最大盈利, 否则的话就更新最小值即可.

int maxProfit(vector<int>& prices) {
    if (prices.size() < 2)
        return 0;
    int minPrice = prices[0], maxProfit = 0;
    for (int i = 1; i < prices.size(); i++) {
        if (prices[i] > prices[i - 1])
            maxProfit = max(maxProfit, prices[i] - minPrice);
        else
            minPrice = min(minPrice, prices[i]);
    }
    return maxProfit;
}
阅读更多
文章标签: leetcode 遍历
个人分类: LeetCode
上一篇[LeetCode] 120. Triangle
下一篇[LeetCode] 122. Best Time to Buy and Sell Stock II
想对作者说点什么? 我来说一句

stockalgolizm

2012年08月23日 105KB 下载

订单管理EA

2012年12月02日 4KB 下载

kill56 buysell

2013年08月04日 6KB 下载

stockpricecontrol

2015年06月24日 1.29MB 下载

leetcode solution

2018年06月07日 1.15MB 下载

Technical Analysis of Stock Trends

2017年11月10日 48.92MB 下载

leetcode java解答答案

2015年12月20日 36KB 下载

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

关闭
关闭