思路:
时间复杂度O(N),空间复杂度O(1)。
总是希望差值最大,cur_min记录当前的最小值。
class Solution {
public:
int maxProfit(vector<int>& prices) {
if(prices.size() == 0) return 0;
size_t size = prices.size();
int cur_min = prices[0];
int max_price = 0;
for(int i = 1; i < size; ++i) {
max_price = max(max_price, prices[i] - cur_min);
cur_min = min(cur_min, prices[i]);
}
return max_price;
}
};
本文介绍了一种优化的买卖股票策略算法,通过设置当前最小价格并计算每日最大利润,实现时间复杂度O(N)和空间复杂度O(1)的目标。此策略适用于股票投资决策分析。
427

被折叠的 条评论
为什么被折叠?



