LeetCode - Array - Easy - 122
思路:这道题目不限制购入次数,只是要求手中只能持有一支股票。那么就想简单一点,只要有利润我就买,怎么看有利润,只要股票前后两天的价格存在正差,我就认为前一天我买了,隔天就卖出去。注意不需要考虑怎么去获得单支股票的最大收益。
class Solution {
public:
int maxProfit(vector<int>& prices) {
int numPro=prices.size();
int maxPro=0;
if(numPro<2) {
return 0;
}
for(int i=1;i<numPro;i++) {
int diff=prices[i]-prices[i-1];
if(diff>0){
maxPro+=diff;
}
}
return maxPro;
}
};
时间复杂度O(n)
空间复杂度O(1)