[리트코드] 53. Maximum Subarray




53. Maximum Subarray

리트코드

나의 풀이

/**
 * @param {number[]} nums
 * @return {number}
 */
// 카데인 알고리즘
var maxSubArray = function (nums) {
  for (let i = 1; i < nums.length; i++) {
    nums[i] = Math.max(nums[i], nums[i] + nums[i - 1]);
  }
  return Math.max(...nums);
};

console.log(maxSubArray([-2, 1, -3, 4, -1, 2, 1, -5, 4]));

Runtime: 134 ms, faster than 20.80% of JavaScript online submissions for Maximum Subarray.



기본 방법 (효율성 bad)

// Brute force 알고리즘
var maxSubArray = function (nums) {
  for (let i = 0; i < nums.length; i++) {
    for (let j = i; j < nums.length; j++) {
      //something...
    }
  }
};