공부한 것
- LeetCode #53. Maximum Subarray
- 가장 신기하고 간결하다고 생각된 풀이를 첨부한다.
해답 코드:
// Time complexity: O(N) // Space complexity: O(1) function maxSubArray3(nums: number[]): number { let localSum = 0; let maxSum = -Infinity; for (const num of nums) { // 지금 수와 지금 수를 부분 합계에 더한 값 중 더 큰 쪽을 새로운 부분 합계로 삼는다. localSum = Math.max(num, localSum + num); // 만약 새로운 부분 합계가 최고 합계보다 더 크면 최고 합계를 업데이트한다. if (localSum > maxSum) { maxSum = localSum; } } return maxSum; }
Uploaded by N2T