힙
데이터에서 최댓값과 최솟값을 빠르게 찾기 위해 고안된 완전 이진트리
- 우선순위 큐를 위해 만들어진 자료구조
- 큰 값이 상위 레벨에 있고 작은 값이 하위 레벨에 있는 자료구조
- 부모 노드 값이 자식 노드의 값보다 항상 커야 한다
- 최대/최솟값들이 필요한 연산이 있다면 힙을 쓰자!
이진탐색
배열 내부의 데이터가 정렬되어 있어야만 사용할 수 있는 알고리즘
- 데이터가 무작위일 때는 사용할 수 없지만, 이미 정렬되어 있다면 빠르게 데이터를 찾을 수 있다
- 찾으려는 데이터와 중간점 위치에 있는 데이터를 반복적으로 비교해서 원하는 데이터를 찾는다
- 처리해야 할 데이터의 개수나 값이 1,000만 단위 이상으로 넘어가면 이진탐색과 같이 O(logN)의 속도를 내야 하는 알고리즘을 떠올리는 게 좋다!
하도 SS501의 '내 머리가 나빠서'를 들은 탓일까 내 머리가 점점 나빠지고 있다.
초큼.. 두렵네 ^^;;7