[53] 最大子数组和

/**
 * @param {number[]} nums
 * @return {number}
 */
var maxSubArray = function (nums) {
  let sum = 0;
  let res = nums[0];
  nums.forEach((n) => {
    if (sum > 0) sum += n; // 如果子数组和大于 0,有增益效果,保留
    else sum = n; // sum 小于等于 0,没有增益效果,直接舍弃
    res = Math.max(sum, res); // 记录最大子数组和
  })
  return res;
};

 

posted @ 2023-11-30 16:27  人恒过  阅读(13)  评论(0)    收藏  举报