TAOCP 제3권
— Donald E. Knuth
Sorting and Searching
The Art of Computer Programming
제3권 · 정렬과 탐색
정렬과 탐색의 완전한 학술적 처리. 내부/외부 정렬, 정렬 네트워크, 순차/이진/해싱 탐색, 균형 트리, B-트리를 다룬다. 45개 섹션으로 구성.
45 섹션
2장
1973
Part I — 정렬 (Sorting)
§1
5.1 정렬의 개요
정렬 문제의 기초
제5장 정렬
§2
5.1 순열의 성질
순열의 조합론적 기초
제5장 정렬
§3
5.1.1 역전
역전 쌍과 정렬 복잡도
제5장 정렬
§4
5.1.1 순열 분석
순열의 심층 분석
제5장 정렬
§5
5.1.2 다중집합의 순열
중복 원소의 순열
제5장 정렬
§6
5.1.3 런(Run)
런의 이론과 응용
제5장 정렬
§7
5.1.4 타블로
타블로와 대합
제5장 정렬
§8
5.2.1 삽입 정렬
정렬의 가장 기본적인 방법
제5장 정렬
§9
5.2.1 셸 정렬
삽입 정렬의 개선
제5장 정렬
§10
5.2.2 교환 정렬
교환을 기반으로 한 정렬
제5장 정렬
§11
5.2.2 퀵 정렬
분할 정복의 정수
제5장 정렬
§12
5.2.3 선택 정렬
최소값을 선택하는 정렬
제5장 정렬
§13
5.2.3 힙 정렬
힙 구조를 활용한 정렬
제5장 정렬
§14
5.2.4 병합 정렬
분할과 병합
제5장 정렬
§15
5.2.5 기수 정렬
자릿수별 정렬
제5장 정렬
§16
5.3 최적 정렬
비교 횟수의 하한
제5장 정렬
§17
5.3.1 최소 비교 정렬
비교 횟수를 최소화
제5장 정렬
§18
5.3.4 정렬 네트워크
비교-교환 네트워크
제5장 정렬
§19
5.4 외부 정렬 개요
메모리를 초과하는 정렬
제5장 정렬
§20
5.4.1 다중 병합
다방향 병합 정렬
제5장 정렬
§21
5.4.2 다상 병합
테이프 정렬의 기술
제5장 정렬
§22
5.4.3 캐스케이드 병합
또 다른 테이프 병합
제5장 정렬
§23
5.4.4 역방향 테이프
테이프 읽기 방향
제5장 정렬
§24
5.4.5 진동 정렬
진동 정렬 기법
제5장 정렬
§25
5.4.6 실제적 고려
실전 정렬의 고려사항
제5장 정렬
§26
5.4.9 디스크와 드럼
디스크 기반 정렬
제5장 정렬
§27
5.5 요약과 역사
정렬 장의 정리
제5장 정렬
Part II — 탐색 (Searching)
§28
6.1 탐색 개요
탐색 문제의 기초
제6장 탐색
§29
6.1 순차 탐색
가장 단순한 탐색 방법
제6장 탐색
§30
6.1 자기 조직화 탐색
자주 쓰는 것을 앞으로
제6장 탐색
§31
6.2.1 이진 탐색
O(log n)의 고전
제6장 탐색
§32
6.2.2 균일 이진 탐색
보간 탐색과 피보나치
제6장 탐색
§33
6.2.2 이진 트리 탐색
트리 기반 탐색
제6장 탐색
§34
6.2.3 균형 트리
AVL 트리와 균형
제6장 탐색
§35
6.2.3 균형 트리 변형
다양한 균형 트리
제6장 탐색
§36
6.2.4 B-트리
외부 탐색의 핵심
제6장 탐색
§37
6.3 디지털 탐색
키의 비트 패턴
제6장 탐색
§38
6.3 Patricia
메모리 효율적 트라이
제6장 탐색
§39
6.4 해싱 개요
O(1)의 기적
제6장 탐색
§40
6.4 분리 연결법
체이닝 방식
제6장 탐색
§41
6.4 개방 주소법
충돌 시 재탐색
제6장 탐색
§42
6.4 해싱 분석
해싱의 수학적 분석
제6장 탐색
§43
6.5 보조 키 탐색
다중 키 탐색
제6장 탐색
§44
6.5 기하학적 탐색
공간 데이터 탐색
제6장 탐색
§45
6.6 요약
탐색 장의 정리
제6장 탐색