TY - BOOK
AU - Edmonds,Jeff
TI - How to Think about Algorithms
SN - 9780521614108 (pbk)
PY - 2008///
CY - New York
PB - Cambridge University Press
KW - Algorithms
KW - Invariants
KW - Recursion theory
N1 - Iterative algorithms: measures of progress and loop invariants
Examples using more-of-the-input loop invariants
Abstract data types
Narrowing the search space: binary search
Iterative sorting algorithms
Euclid's GCD algorithm
The loop invariant for lower bounds
Abstractions, techniques, and theory
Some simple examples of recursive algorithms
Recursion on trees
Recursive images
Parsing with context-free grammars
Definition of optimization problems
Graph search algorithms
Network flows and linear programming
Greedy algorithms
Recursive backtracking
Dynamic programming algorithms
Examples of dynamic programs
Reductions and NP-completeness
Randomized algorithms
Existential and universal quantifiers
Time complexity
Logarithms and exponentials
Asymptotic growth
Adding-made-easy approximations
Recurrence relations
A formal proof of correctness
N2 - "This book presents insights, notations, and analogies to help the novice describe and think about algorithms like an expert. Jeff Edmonds provides both the big picture and easy step-by-step methods for developing algorithms, while avoiding the common pitfalls. Paradigms such as loop invariants and recursion help to unify a huge range of algorithms into a few meta-algorithms. Part of the goal is to teach the students to think abstractly."--Jacket
ER -