
투 포인터 (Two Pointers) 투 포인터 알고리즘은 1차원 배열에서 두 개의 포인터를 조작하여 원하는 결과를 얻어내는 알고리즘입니다. 🎈 예제 길이가 n인 1차원 배열이 있을 때, 그 부분 배열의 원소의 합이 m이 되는 경우의 수를 알고 싶습니다. 모든 부분 배열을 탐색한다면 시간복잡도는 O(n^2)이 되겠습니다. 그러나 투 포인터를 사용하면 O(n) 에 문제를 해결할 수 있습니다. 포인터 2개를 만듭니다. start, end라고 하겠습니다. 처음 시작할 때는 start, end = 0 입니다. start = m) { start++; // start를 오른쪽으로 옮김 sum -= arr[start]; } else if (end == n) { break; } else { end++; // end를 ..
알고리즘
2022. 5. 23. 21:09
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 프로그래머스
- greedy
- 자바
- 정적팩터리메서드
- deque
- BuilderPattern
- BAEKJOON
- 여행가자
- ORA-02289
- 후위순회
- 시퀀스가존재하지않습니다
- 트리순회
- 시퀀스
- 스레드
- 중위순회
- 빌더패턴
- 유니온파인드
- 백준1976
- 알고리즘
- 전위순회
- 이펙티브자바
- 백준
- 분리집합
- 탐욕법
- 생성자
- Sequence
- 이진트리
- effectivejava
- Java
- 투포인터 #알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함