Trees 6.3. Digital Searching 6.4. Hashing 6.5. Retrieval on Secondary Keys Volume 4A – Combinatorial Algorithms, Part 1 Chapter 7 – Combinatorial Searching 7.1. Zeros and Ones 7.1.1. Boolean Basics 7.1.2. Boolean Evaluation 7.1.3. Bitwise Tricks and Techniques 7.1.4. Binary Decision Diagrams 7.2. Generating All Possibilities 7.2.1. Generating Basic Combinatorial Patterns 7.2.1.1. Generating all n-tuples 7.2.1.2. Generating all permutations 7.2.1.3. Generating all combinations 7.2.1.4. Generating all partitions 7.2.1.5. Generating all set partitions 7.2.1.6. Generating all trees 7.2.1.7. History and further references Volume 4B – Combinatorial Algorithms, Part 2 Chapter 7 – Combinatorial Searching (continued) 7.2. Generating all possibilities (continued) 7.2.2. Backtrack programming (published in Fascicle 5) 7.2.2.1. Dancing links (includes discussion of Exact cover) (published in Fascicle 5) 7.2.2.2. Satisfiability (published in Fascicle 6) Planned Volumes 4C, 4D, .. – Combinatorial Algorithms Chapter 7 – Combinatorial Searching (continued) 7.2. Generating all possibilities (continued) 7.2.2. Backtrack programming (continued) 7.2.2.3. Constraint satisfaction (online draft in pre-fascicle 7A) 7.2.2.4. Hamiltonian paths and cycles (online draft in pre-fascicle 8A) 7.2.2.5. Cliques 7.2.2.6. Covers (Vertex cover, Set cover problem, Exact cover, Clique cover) 7.2.2.7. Squares 7.2.2.8. A potpourri of puzzles (online draft in pre-fascicle 9B) (includes Perfect digital invariant) 7.2.2.9. Estimating backtrack costs (chapter 6 of "Selected Papers on Analysis of Algorithms", and Fascicle 5, pp. 44−47, under the heading "Running time estimates") 7.2.3. Generating inequivalent patterns (includes discussion of Pólya enumeration theorem) (see "Techniques for Isomorph Rejection", chapter 4 of "Classification Algorithms for Codes and Designs" by Kaski and Östergård) 7.3. Shortest paths 7.4. Graph algorithms (online draft in pre-fascicle 12A) 7.4.1. Components and traversal (online draft in pre-fascicle 12A) 7.4.1.1. Union-find algorithms (online draft in pre-fascicle 12A) 7.4.1.2. Depth-first search (online draft in pre-fascicle 12A) 7.4.1.3. Vertex and edge connectivity 7.4.2. Special classes of graphs 7.4.3. Expander graphs 7.4.4. Random graphs 7.5. Graphs and optimization (online draft in pre-fascicle 14A) 7.5.1. Bipartite matching (including maximum-cardinality matching, Stable marriage problem, Mariages Stables) (online draft in pre-fascicle 14A) 7.5.2. The assignment problem 7.5.3. Network flows 7.5.4. Optimum subtrees 7.5.5. Optimum matching 7.5.6. Optimum orderings 7.6. Independence theory 7.6.1. Independence structures 7.6.2. Efficient matroid algorithms 7.7. Discrete dynamic programming (see also Transfer-matrix method) 7.8. Branch-and-bound techniques 7.9. Herculean tasks (aka NP-hard problems) 7.10. Near-optimization Chapter 8 – Recursion (chapter 22 of "Selected Papers on Analysis of Algorithms") Volume 5 – Syntactic Algorithms Chapter 9 – Lexical scanning (includes also string search and data compression) Chapter 10