前言
题目: 53. 最大子数组和
文档: 代码随想录——最大子数组和
编程语言: C++
解题状态: 复杂度过高
思路
暴力解法容易超过时间限制。使用贪心算法时要考虑到加上负数会使和变小。
代码
class Solution {
public:
int maxSubArray(vector<int>& nums) {
int res = INT32_MIN;
int count = 0;
for (int i = 0; i < nums.size(); i++) {
count += nums[i];
if (count > res) {
res = count;
}
if (count <= 0) count = 0;
}
return res;
}
};
- 时间复杂度: O ( n ) O(n) O(n)
- 空间复杂度: O ( 1 ) O(1) O(1)