JSFiddle - React, Tailwind, and code Playground
by ronilan
JavaScript
Array.prototype.sum = function () {
var i = this.length,
result = 0;
while (i--) {
result += this[i];
}
return result;
};
Array.prototype.largestSubArray = function () {
var array = this,
max = this.length,
i,
j,
arraySlice,
arraySliceSum,
largestValue = this[0],
result;
for (i = 0; i < max; i++) {
for (j = i; j < max; j++) {
arraySlice = array.slice(i, j + 1);
arraySliceSum = arraySlice.sum();
if (largestValue < arraySliceSum) {
result = arraySlice;
largestValue = arraySliceSum;
}
}
}
return result;
};
var a = [1, 3, 4, 0, -23, 45, 6, 7, -9, 10, -22, 22, 1, -10];
console.log(a.largestSubArray());