53. 最大数组和

思路:

这题可以用在线处理算法(另一种程度上的滑动窗口)。既然是最大数组和,那么如果curRes小于等于0了,那么它对于最大数组和是没有贡献的,可以drop掉。

 

代码:

 1 /**
 2      * @param {number[]} nums
 3      * @return {number}
 4      */
 5     var maxSubArray = function(nums) {
 6         let res = nums[0], curRes = nums[0];
 7         for(let i = 1; i < nums.length; i++){
 8             if(curRes <= 0){
 9                 curRes = nums[i];
10             }else{
11                 curRes += nums[i];
12             }
13             res = Math.max(res, curRes);
14         }
15         return res;
16     };

 

posted @ 2022-04-07 10:04  BJFU-VTH  阅读(20)  评论(0编辑  收藏  举报