买卖股票的最佳时机

分析

这题抓住一个点:找到历史最低点购入,并在这之后找到利润最高点。 即求「卖出价格-买入价格」的最大值。

解答

class Solution {
public:
  int maxProfit(vector<int> &prices) {
    auto buy = prices[0];
    auto profit = 0;

    for (auto price : prices) {
      profit = max(profit, price - buy);
      buy = min(buy, price);
    }

    return profit;
  }
};
返回文章列表