Algorithms in Action effectively introduces students to a variety of techniques for designing algorithms with a focus on developing intuitive understanding. Readers learn how to successfully construct foundational algorithms, preparing them for more advanced courses in the discipline, as well as professional application.
Over the course of nine chapters, students learn fundamental concepts critical to the development of algorithms, paired with detailed visual representations that walk readers step-by-step through algorithm execution. The text begins with a review of runtime complexity, lower bound for sorting, and trees and graphs, then moves into more complex topical areas, including amortized analysis, heaps, dynamic programming, network flow, linear programming, and NP-completeness. The book includes over 160 figures, as well as review questions and exercises at the end of each chapter, to encourage learning, retention, practice, and application.
Developed to provide students with an approachable and effective introduction to algorithm design, Algorithms in Action is an ideal resource for advanced undergraduate or master-level courses in computer science or related technical disciplines. Foundational knowledge of discrete mathematics, data structures, and calculus is recommended as a prerequisite.
Victor Savvich has taught courses in machine learning, algorithm analysis, mathematics, programming, and computer science nationally and internationally. His academic areas of interest include applied computational mathematics, computer algebra, experimental mathematics, and pen-based computing.