일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- heroku
- scanner
- 자바입력
- R
- input
- 자바 thread 실행 순서 제어
- hash table
- Kadane's Algorithm
- Easy
- 수학
- 자바 스레드 실행 순서 제어
- array
- JAVA11
- 사칙연산
- 카데인 알고리즘
- SpringBoot 2
Archives
- Today
- Total
목록Coding Test/LeetCode (1)
DeFacto-Standard IT
53. Maximum Subarray
- 문제 다음 배열이 있다고 가정해보자. [-2, 1, -3, 4, -1, 2, 1, -5, 4] 이 때, 배열 내부의 연속된 서브 배열 중 합이 가장 큰 경우를 리턴 예를 들어, [4, -1, 2, 1]의 합은 6으로 서브 배열 중 합이 가장 크다. - 풀이 우선 for문을 1자리 중에서 최대값을 찾고, 2자리 중에서 내부 for문을 돌면서 찾으면 성능이 나오지 않는다. 여기서 카데인 알고리즘을 적용하면 배열을 한 번만 순회하여 O(n)의 시간복잡도로 해결할 수 있다. 일반적으로 배열을 순회하면서 1. 1자리의 합을 모두 구해서 최대값을 구함 2. 2자리의 합을 모두 구해서 최대값을 구함 ... n. n자리의 합을 모두 구해서 최대값을 구함 등과 같이 생각했다면, 이 문제는 정답은 나올지언정 성능은 나..
Coding Test/LeetCode
2020. 1. 25. 20:05