题干:
代码:
class Solution {
public:int maxProfit(vector<int>& prices) {int low = INT_MAX;int res = INT_MIN;for(int i = 0; i < prices.size(); i++){low = min(low, prices[i]);res = max(res, prices[i] - low);}return res;}
};
贪心思路:在左边找一个最小值,通过遍历价格列表,不断更新遇到的最低价格,并计算当前价格与最低价格的差值,如果这个差值大于之前记录的最大利润,则更新最大利润。