문제 링크
https://leetcode.com/problems/maximum-subarray/
제출 코드
var maxSubArray = function(nums) {
if (nums.length === 1) { return nums[0] }
let result = nums[0]
let max = ''
let sum = 0
for (j = 0; j < nums.length; j++) {
max = nums[j]
for (let i = j; i < nums.length; i++) {
sum = nums[i] + sum
if (max < sum) { max = sum }
}
if (result < max) { result = max }
sum = 0
}
return result
};
풀이 방법
- 배열의 각 요소(
num[j])를 시작으로 for문을 돌며 합을 구해 최대값을 찾는다.
시작 요소(num[j])가 기준 값이 되며, max에 최대값을 저장
- max 값을 비교하여 제일 큰 값을 찾는다. => result
