最大子序和
写在前面,小白从零刷题,在解答会写出思路,正确答案,以及所有使用到的语法和知识点
1.方法 1
- 如何想到?
- 包含最大,最多类字眼可能是动态规划
- 解题步骤
- 分解问题,从小问题到大问题,举例子从一开始入手,先从例子中找出应该的状态方程
class Solution {
public:
int maxSubArray(vector<int>& nums) {
int a=nums[0],b,temp,ans=nums[0];
for(int i=0;i<nums.size();i++){
if(i==0) continue;
b=max(a+nums[i],nums[i]);
ans=max(ans,b);
a=b;
}
return ans;
}
};
时间空间复杂度,面试
- 时间空间复杂度
方法一:空间复杂度o(1),时间复杂度o(n)