连续子数组的最大和


一、题目

输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。

输入: nums = [-2,1,-3,4,-1,2,1,-5,4]

输出:6

二、思路

1.动态规划:解决子问题,寻找最优解的一个过程。递归+记忆化思想

2.memo[ ]累加和记忆化数组,进行动态规划抉择是叠加到之前的序列记录,还是从当前元素开始重新记录;利用max_result变量记录最大值

三、程序实现

var maxSubArray = function(nums) {
let memo=[];
memo[0]=nums[0]
let max_result=nums[0];
for(let i=1;i