Skip to content
Algorithm.js
📚 단일 패턴

53. Maximum Subarray

Kadane's Algorithm과 동적 프로그래밍을 사용하여 연속된 부분 배열의 최대 합 찾기

Sep 30, 2025 — dynamic-programming

문제 설명

풀이 아이디어

구현

/**
* @param {number[]} nums
* @return {number}
*/
var maxSubArray = function(nums) {
const N = nums.length;
const dp = Array(N).fill(0);
dp[0] = nums[0];
max = nums[0];
for (let i = 1; i < N; i += 1) {
dp[i] = Math.max(
dp[i-1] + nums[i],
nums[i]
)
if (max < dp[i]) max = dp[i];
}
return max;
};