Skip to content

Commit cbb3965

Browse files
Merge pull request ignacio-chiazzo#6 from ignacio-chiazzo/maximun-subb
Added Maximun Subbarray Problem
2 parents c12fda4 + bd76ceb commit cbb3965

File tree

2 files changed

+42
-1
lines changed

2 files changed

+42
-1
lines changed

Main.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
var permutationWithoutDuplicates = require("./PermutationsWithoutDuplicates.js");
33
var permutationWithDuplicates = require("./PermutationsWithDuplicates.js");
44
var subsets = require("./Subsets.js");
5+
var maximunSubarray = require("./MaximunSubarray.js");
56
var coinChange = require("./CoinChange.js");
67
var nQueens = require("./NQueens.js");
78
var uniquePaths = require("./UniquePaths.js");
@@ -12,7 +13,8 @@ var floodFill = require("./FloodFill.js")
1213
// permutationWithoutDuplicates.main();
1314
// permutationWithDuplicates.main();
1415
// subsets.main();
15-
coinChange.main();
16+
// maximunSubarray.main();
17+
// coinChange.main();
1618
// nQueens.main();
1719
// uniquePaths.main();
1820
// floodFill.main();

MaximunSubarray.js

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
/*
2+
https://leetcode.com/problems/maximum-subarray/submissions/1
3+
4+
. Maximum Subarray
5+
Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum.
6+
7+
Example:
8+
9+
Input: [-2,1,-3,4,-1,2,1,-5,4],
10+
Output: 6
11+
Explanation: [4,-1,2,1] has the largest sum = 6.
12+
Follow up:
13+
14+
*/
15+
16+
var maxSubArray = function(nums) {
17+
if(nums.length == 0) { return 0 };
18+
var maxSub = nums[0];
19+
var currentMax = nums[0];
20+
21+
for(var i = 1; i < nums.length; i++) {
22+
currentMax = max(nums[i], currentMax + nums[i]);
23+
if(currentMax > maxSub) {
24+
maxSub = currentMax;
25+
}
26+
}
27+
28+
return maxSub;
29+
};
30+
31+
var max = function(i, j) {
32+
return (i > j) ? i : j;
33+
}
34+
35+
var main = function() {
36+
console.log(maxSubArray([4,1,-1,4,5,6,7,-200]));
37+
}
38+
39+
module.exports.main = main;

0 commit comments

Comments
 (0)