World Scientific
Skip main navigation

Cookies Notification

We use cookies on this site to enhance your user experience. By continuing to browse the site, you consent to the use of our cookies. Learn More
×
An Introduction to the Analysis of Algorithms cover

A successor to the first edition, this updated and revised book is a great companion guide for students and engineers alike, specifically software engineers who design reliable code. While succinct, this edition is mathematically rigorous, covering the foundations of both computer scientists and mathematicians with interest in algorithms.

Besides covering the traditional algorithms of Computer Science such as Greedy, Dynamic Programming and Divide & Conquer, this edition goes further by exploring two classes of algorithms that are often overlooked: Randomised and Online algorithms — with emphasis placed on the algorithm itself.

The coverage of both fields are timely as the ubiquity of Randomised algorithms are expressed through the emergence of cryptography while Online algorithms are essential in numerous fields as diverse as operating systems and stock market predictions.

While being relatively short to ensure the essentiality of content, a strong focus has been placed on self-containment, introducing the idea of pre/post-conditions and loop invariants to readers of all backgrounds. Containing programming exercises in Python, solutions will also be placed on the book's website.

Sample Chapter(s)
Chapter 1: Preliminaries (589 KB)


Contents:
  • Preliminaries
  • Greedy Algorithms
  • Divide and Conquer
  • Dynamic Programming
  • Online Algorithms
  • Randomized Algorithms
  • Appendix A: Number Theory and Group Theory
  • Appendix B: Relations
  • Appendix C: Logic

Readership: Students of undergraduate courses in algorithms and programming.