C/C++教程

leetcode-剑指 Offer 63. 股票的最大利润

本文主要是介绍leetcode-剑指 Offer 63. 股票的最大利润,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一、题目

买卖一次股票的最大利润
在这里插入图片描述

二、思路

1、定义一个最小值,实时保持搜索过的最小值
2、定义一个values利润,实时比较当前值和最小值的差值

三、代码

class Solution {
public:
    int maxProfit(vector<int>& prices) {
        if(prices.empty())
        {
            return 0;
        }
        int minprice=prices[0];
        int size=prices.size();
        int values=0;
        for(int i=0;i<size;++i)
        {
            if(prices[i]<minprice)
            {
                minprice=prices[i];
            }
            else
            {
                values=max(values,prices[i]-minprice);
            }
        }
        return values;
    }
};
这篇关于leetcode-剑指 Offer 63. 股票的最大利润的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!