목차
제1장 서론
1.1 알고리즘이란? = 1
1.2 알고리즘 명세 = 4
1.3 성능 분석 = 10
1.4 무작위 알고리즘 = 39
1.5 참고문헌과 읽기 = 52
제2장 기초 자료구조
2.1 스택과 큐 = 55
2.2 트리 = 63
2.3 사전 = 67
2.4 우선 순위 큐 = 75
2.5 집합과 서로 소인 집합 Union = 82
2.6 그래프 = 91
2.7 참고문헌과 읽기 = 101
제3장 분할-정복 기법
3.1 일반적인 방법 = 103
3.2 이진 탐색 = 106
3.3 최대 값과 최소 값 찾기 = 113
3.4 합병 정렬 = 118
3.5 퀵 정렬 = 125
3.6 선택 = 133
3.7 Strassen의 행렬 곱셈 = 145
3.8 볼록 껍질 = 148
3.9 참고문헌과 읽기 = 157
3.10 추가 연습문제 = 158
제4장 욕심쟁이 방법
4.1 일반적인 방법 = 161
4.2 배낭 문제 = 162
4.3 트리 정점 분할 = 166
4.4 마감시간에 따른 작업 순서화 = 170
4.5 최소-비용 신장 트리 = 178
4.6 테잎에 대한 최적 저장 문제 = 189
4.7 최적 합병 패턴 = 193
4.8 단일 출발지 최단-경로 = 199
4.9 참고문헌과 읽기 = 205
4.10 추가 연습문제 = 206
제5장 동적 프로그래밍
5.1 일반적인 방법 = 209
5.2 다단계 그래프 = 213
5.3 모든 쌍들의 최단 경로들 = 219
5.4 단일 출발지 최단 경로들 : 일반적인 가중 값들 = 223
5.5 최적 이진 탐색 트리(*) = 227
5.6 문자열 편집 = 234
5.7 0/1-배낭 = 236
5.8 신뢰도 설계 = 223
5.9 외판원 문제 = 243
5.10 흐름 공정 스케줄링 = 248
5.11 참고문헌과 읽기 = 253
5.12 추가 연습문제 = 254
제6장 기본적인 운행과 탐색 기법
6.1 이진 트리에 대한 기법들 = 257
6.2 그래프에 대한 기법들 = 262
6.3 연결 요소와 신장 트리들 = 267
6.4 이중 연결 요소와 DFS = 270
6.5 참고문헌과 읽기 = 277
제7장 퇴각검색
7.1 일반적인 방법 = 279
7.2 8-퀸 문제 = 290
7.3 부분집합의 합 = 294
7.4 그래프 채색 = 297
7.5 헤밀톤 순환 경로 = 301
7.6 배낭 문제 = 303
7.7 참고문헌과 읽기 = 308
7.8 추가 연습문제 = 308
제8장 분기와 한정
8.1 방법 = 313
8.2 0/1-배낭 문제 = 324
8.3 외판원 문제(*) = 332
8.4 효율성 재고 = 339
8.5 참고문헌과 읽기 = 342
제9장 대수적 문제들
9.1 일반적인 방법 = 343
9.2 계산과 보간 = 345
9.3 빠른 FOURIER 변환 = 355
9.4 법 산술 = 363
9.5 더욱 빠른 값의 계산과 보간 = 370
9.6 참고문헌과 읽기 = 376
제10장 하한계 이론
10.1 비교 트리 = 380
10.2 신탁과 반대 논의 = 387
10.3 변형을 통한 하한계들 = 393
10.4 대수 문제들에 대한 기법들(*) = 402
10.5 참고문헌과 읽기 = 411
제11장 np-hard와 np-complete 문제들
11.1 기본 개념 = 413
11.2 cook의 정리 = 424
11.3 np-hard 그래프 문제 = 431
11.4 np-hard 스케줄링 문제들 = 445
11.5 np-hard 코드 생성 문제 = 451
11.6 단순화된 np-hard 문제들 = 459
11.7 참고문헌과 읽기 = 461
11.8 추가 연습문제 = 462
제12장 근사화 알고리즘
12.1 서론 = 465
12.2 절대적 근사화 = 468
12.3 e-근사화 = 472
12.4 다항식 시간 근사화 기법들 = 484
12.5 완전 다항식 시간 근사화 기법들 = 489
12.6 확률적으로 좋은 알고리즘들(*) = 498
12.7 참고문헌과 읽기 = 501
12.8 추가 연습문제 = 502
제13장 PRAM 알고리즘
13.1 서론 = 507
13.2 계산 모델 = 510
13.3 기본적인 기법들과 알고리즘들 = 516
13.4 선 택덤 = 526
13.5 합병 = 532
13.6 정렬 = 539
13.7 그래프 문제들 = 545
13.8 볼록 껍질 계산 = 549
13.9 하한계 = 552
13.10 참고문헌과 읽기 = 556
13.11 추가 연습문제 = 558
제14장 메쉬 알고리즘
14.1 계산 모델 = 561
14.2 패킷 라우팅 = 562
14.3 기본적인 알고리즘들 = 571
14.4 선택 = 580
14.5 합병 = 585
14.6 정렬 = 589
14.7 그래프 문제 = 595
14.8 볼록 껍질 계산 = 599
14.9 참고문헌과 읽기 = 603
14.10 추가 연습문제 = 605
제15장 하이퍼큐브 알고리즘
15.1 계산 모델 = 609
15.2 PPR 라우팅 = 617
15.3 기본적인 알고리즘들 = 621
15.4 선택 = 627
15.5 합병 = 630
15.6 정렬 = 634
15.7 그래프 문제들 = 635
15.8 볼록 껍질 계산하기 = 638
15.9 참고문헌과 읽기 = 639
15.10 추가 연습문제 = 640
찾아보기 = 643