Leetcode 121 Best Time to Buy and Sell Stock 动态规划
由于题意太长,请自己翻译,很容易懂的。
做法:从前向后遍历数组,记录当前出现过的最低价格,作为买入价格,并计算以当天价格出售的收益,作为可能的最大收益,整个遍历过程中,出现过的最大收益就是所求。动态规划的思路下次有空写个专题
class Solution { public: int maxProfit(vector<int>& prices) { if (prices.size() < 2) return 0; int maxProfit = 0; int curMin = prices[0]; for (int i = 1; i < prices.size(); i++) { curMin = min(curMin, prices[i]); maxProfit = max(maxProfit, prices[i] - curMin); } return maxProfit; } };