class Solution {
public:
int maxSubArray(vector<int>& nums) {
}
};
面试题 16.17. 连续数列
给定一个整数数组,找出总和最大的连续数列,并返回总和。
示例:
输入: [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。
进阶:
如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。
原站题解
golang 解法, 执行用时: 4 ms, 内存消耗: 3.2 MB, 提交时间: 2021-06-15 20:46:59
func maxSubArray(nums []int) int { ans := nums[0] for i := 1; i < len(nums); i++ { if nums[i-1] > 0 { nums[i] += nums[i-1] } if nums[i] > ans { ans = nums[i] } } return ans }