121. 买卖股票的最佳时机
写在前面,小白从零刷题,在解答会写出思路,正确答案,以及所有使用到的语法和知识点
1.dp 5
- 如何想到?
- 最大值关键词,之后的状态和之前有关
- 解题步骤
- 判断当前的值与之前数组内的最小值和上一个状态的比较
class Solution {
public:
int maxProfit(vector<int>& prices) {
if(prices.size()==0)return 0;
int min_num=prices[0],temp=0,ans=0;
for(int i=1;i<prices.size();i++){
if(prices[i]<min_num){
min_num=prices[i];
}
temp=prices[i]-min_num;
ans=ans>temp? ans:temp;
}
return ans;
}
};
时间复杂度/空间复杂度分析/面试场景如何作答
- 方法一时间空间复杂度
- 时间复杂度:O(N)
- 空间复杂度:O(1)