search for books and compare prices
Tables of Contents for Algorithm Design
Chapter/Section Title
Page #
Page Count
I Fundamental Tools
1
284
Algorithm Analysis
3
52
Methodologies for Analyzing Algorithms
5
8
Asymptotic Notation
13
8
A Quick Mathematical Review
21
10
Case Studies in Algorithm Analysis
31
3
Amortization
34
8
Experimentation
42
5
Exercises
47
8
Basic Data Structures
55
84
Stacks and Queues
57
8
Vectors, Lists, and Sequences
65
10
Trees
75
19
Priority Queues and Heaps
94
20
Dictionaries and Hash Tables
114
14
Java Example: Heap
128
3
Exercises
131
8
Search Trees and Skip Lists
139
78
Ordered Dictionaries and Binary Search Trees
141
11
AVL Trees
152
7
Bounded-Depth Search Trees
159
26
Splay Trees
185
10
Skip Lists
195
7
Java Example: AVL and Red-Black Trees
202
10
Exercises
212
5
Sorting, Sets, and Selection
217
40
Merge-Sort
219
6
The Set Abstract Data Type
225
10
Quick-Sort
235
4
A Lower Bound on Comparison-Based Sorting
239
2
Bucket-Sort and Radix-Sort
241
3
Comparison of Sorting Algorithms
244
1
Selection
245
3
Java Example: In-Place Quick-Sort
248
3
Exercises
251
6
Fundamental Techniques
257
28
The Greedy Method
259
4
Divide-and-Conquer
263
11
Dynamic Programming
274
8
Exercises
282
3
II Graph Algorithms
285
130
Graphs
287
52
The Graph Abstract Data Type
289
7
Data Structures for Graphs
296
7
Graph Traversal
303
13
Directed Graphs
316
13
Java Example: Depth-First Search
329
6
Exercises
335
4
Weighted Graphs
339
42
Single-Source Shortest Paths
341
13
All-Pairs Shortest Paths
354
6
Minimum Spanning Trees
360
13
Java Example: Dijkstra's Algorithm
373
3
Exercises
376
5
Network Flow and Matching
381
34
Flows and Cuts
383
4
Maximum Flow
387
9
Maximum Bipartite Matching
396
2
Minimum-Cost Flow
398
7
Java Example: Minimum-Cost Flow
405
7
Exercises
412
3
III Internet Algorithmics
415
130
Text Processing
417
34
Strings and Pattern Matching Algorithms
419
10
Tries
429
11
Text Compression
440
3
Text Similarity Testing
443
4
Exercises
447
4
Number Theory and Cryptography
451
60
Fundamental Algorithms Involving Numbers
453
18
Cryptographic Computations
471
10
Information Security Algorithms and Protocols
481
7
The Fast Fourier Transform
488
12
Java Example: FFT
500
8
Exercises
508
3
Network Algorithms
511
34
Complexity Measures and Models
513
4
Fundamental Distributed Algorithms
517
13
Broadcast and Unicast Routing
530
5
Multicast Routing
535
6
Exercises
541
4
IV Additional Topics
545
140
Computational Geometry
547
44
Range Trees
549
7
Priority Search Trees
556
5
Quadtrees and k-D Trees
561
4
The Plane Sweep Technique
565
7
Convex Hulls
572
11
Java Example: Convex Hull
583
4
Exercises
587
4
NP - Completeness
591
52
P and NP
593
6
NP - Completeness
599
4
Important NP - Complete Problems
603
15
Approximation Algorithms
618
9
Backtracking and Branch-and-Bound
627
11
Exercises
638
5
Algorithmic Frameworks
643
42
External-Memory Algorithms
645
12
Parallel Algorithms
657
10
Online Algorithms
667
13
Exercises
680
5
A Useful Mathematical Facts
685
4
Bibliography
689
9
Index
698