| Store |
Condition |
Deals & Coupons | Price |
Est. Shipping |
Total |
Buy |
|---|---|---|---|---|---|---|
| Sorry we could not find any result for “9780521614108” | ||||||
How to Think About Algorithms by Jeff Edmonds is a rigorous yet accessible textbook that shifts the focus from rote memorization of algorithms to the development of algorithmic thinking. The book is organized around fundamental techniques—iterative algorithms, recursion, greedy algorithms, dynamic programming, and graph algorithms—and uses a consistent framework of preconditions, postconditions, loop invariants, and termination proofs to help readers reason about correctness and efficiency. Edmonds emphasizes the 'why' behind each algorithm, guiding students through the process of deriving solutions to computational problems. The text includes numerous examples, exercises, and proofs, making it suitable for a university-level algorithms course. It bridges the gap between intuitive problem-solving and formal analysis, equipping readers with tools to tackle unfamiliar problems and understand the limits of computation, including NP-completeness.
This book is ideal for undergraduate and graduate computer science students taking an algorithms course, as well as self-taught programmers who want a deeper, proof-oriented understanding of algorithm design. Instructors seeking a textbook that emphasizes conceptual reasoning over cookbook recipes will find it valuable. It also suits candidates preparing for technical interviews who need to articulate the reasoning behind algorithmic choices. Readers should have basic programming experience and familiarity with discrete mathematics.
- ✓ Emphasizes conceptual understanding and proof techniques rather than memorization
- ✓ Consistent framework of pre/postconditions and invariants builds rigorous reasoning
- ✓ Covers core topics including iteration, recursion, greedy, dynamic programming, and NP-completeness
- ✓ Numerous exercises and examples reinforce learning
- ✓ Clear explanations make complex ideas accessible to motivated students
- ✗ May be too theoretical for readers seeking quick practical implementations
- ✗ Assumes prior knowledge of discrete math and basic programming
- ✗ Some proofs and formalisms can be dense for beginners
- ✗ Limited coverage of advanced or specialized algorithmic topics
- ✗ Not a reference for specific programming languages or libraries
At Windsorbooks, we compare prices from trusted sellers so you can buy, rent, or sell textbooks at the best total price — shipping included.
As an Amazon Associate, Windsorbooks.com may earn a small commission on qualifying purchases.