Map 구현 고르기
- 정렬 배열에서 탐색과 가운데 삽입의 비용을 각각 적는다.
- 해시테이블로 키를 작은 순서대로 읽으려면 무엇이 더 필요한지 적는다.
- 키 갱신과 정렬 순회를 함께 자주 해야 할 때 BST가 알맞은 이유를 적는다.
- 정렬 연결리스트가 순서를 유지해도 탐색이 빠르지 않은 이유를 적는다.
해설 펼치기
- 탐색은 이진 탐색으로 O(log n), 가운데 삽입은 뒤 항목을 옮겨 O(n)이다.
- 해시테이블은 키의 대소 순서를 보존하지 않으므로 별도로 정렬해야 한다.
- BST는 키의 순서를 구조에 담아 비교 결과로 한쪽 부분 트리를 고르고, 중위 순회로 정렬 순서를 바로 읽을 수 있다.
- 가운데 원소로 바로 갈 수 없어 앞에서부터 따라가야 하므로 O(n)이다.