C++ NC7 买卖股票的最好时机
NC7 买卖股票的最好时机
方法的时间复杂度O(n),空间复杂度O(1)
int maxProfit(vector<int>& prices) { //当前利润 int curProfit = 0; //当前最大利润 int result = 0; for (int i = 1; i < prices.size(); i++) { //获得与上一天股票差值 curProfit += (prices[i] - prices[i - 1]); //当前利润比当前最大利润大时,将当前利润设为当前最大利润 if (curProfit > result) { result = curProfit; } if (curProfit < 0)//发现比上一个起点更低的值,更换起点 { curProfit = 0; } } return result; }