Preface |
Preface to the Second Edition |
What this Book Is About / 0: |
Background / 0.1: |
Hard versus Easy Problems / 0.2: |
A Preview / 0.3: |
Mathematical Preliminaries / 1: |
Orders of Magnitude / 1.1: |
Positional Number Systems / 1.2: |
Manipulations with Series / 1.3: |
Recurrence Relations / 1.4: |
Counting / 1.5: |
Graphs / 1.6: |
Recursive Algorithms / 2: |
Introduction / 2.1: |
Quicksort / 2.2: |
Recursive Graph Algorithms / 2.3: |
Fast Matrix Multiplication / 2.4: |
The Discrete Fourier Transform / 2.5: |
Applications of the FFT / 2.6: |
A Review / 2.7: |
Bibliography / 2.8: |
The Network Flow Problem / 3: |
Algorithms for the Network Flow Problem / 3.1: |
The Algorithm of Ford and Fulkerson / 3.3: |
The Max-Flow Min-Cut Theorem / 3.4: |
The Complexity of the Ford-Fulkerson Algorithm / 3.5: |
Layered Networks / 3.6: |
The MPM Algorithm / 3.7: |
Applications of Network Flow / 3.8: |
Algorithms in the Theory of Numbers / 4: |
Preliminaries / 4.1: |
The Greatest Common Divisor / 4.2: |
The Extended Euclidean Algorithm / 4.3: |
Primality Testing / 4.4: |
Interlude: The Ring of Integers Modulo n / 4.5: |
Pseudoprimality Tests / 4.6: |
Proof of Goodness of the Strong Pseudoprimality Test / 4.7: |
Factoring and Cryptography / 4.8: |
Factoring Large Integers / 4.9: |
Proving Primality / 4.10: |
NP-Completeness / 5: |
Turing Machines / 5.1: |
Cook's Theorem / 5.3: |
Some Other NP-Complete Problems / 5.4: |
Half a Loaf ... / 5.5: |
Backtracking (I): Independent Sets / 5.6: |
Backtracking (II): Graph Coloring / 5.7: |
Approximate Algorithms for Hard Problems / 5.8: |
Hints and Solutions for Selected Problems |
Index |
Preface |
Preface to the Second Edition |
What this Book Is About / 0: |
Background / 0.1: |
Hard versus Easy Problems / 0.2: |
A Preview / 0.3: |