Maximum Subarray

Jan 31, 2018

Find the contiguous subarray within an array (containing at least one number) which has the largest sum.

For example, given the array [-2,1,-3,4,-1,2,1,-5,4],
the contiguous subarray [4,-1,2,1] has the largest sum = 6.

var maxSubArray = function(nums) {
    var l, l1=nums[0], l2=nums[0];
    var index1=0, index2=0;
    for(var i=0; i<nums.length; i++) {
        l = nums[i];
        l2 = nums[i];
        for(var j=i+1; j<nums.length; j++) {
            l = l + nums[j];
            if(l1<l) {
                l1 = l;
                index1 = i;
                index2 = j+1;
            }
        }
        if(l2 > l1) {
            index1 = i;
            index2 = i+1;
        }
    }
    console.log(nums.slice(index1,index2));
};