An introduction to the analysis of algorithms

Soltys, Michael.

An introduction to the analysis of algorithms Michael Soltys. - 2nd ed. - Singapore ; Hackensack, N.J. : World Scientific Pub. Co., c2012. - 1 online resource (xiii, 197 p.) : ill.

Includes bibliographical references (p. 187-189) and index.

1. Preliminaries. 1.1. Induction. 1.2. Invariance. 1.3. Correctness of algorithms. 1.4. Stable marriage. 1.5. Answers to selected problems. 1.6. Notes -- 2. Greedy algorithms. 2.1. Minimum cost spanning trees. 2.2. Jobs with deadlines and profits. 2.3. Further examples and problems. 2.4. Answers to selected problems. 2.5. Notes -- 3. Divide and conquer. 3.1. Mergesort. 3.2. Multiplying numbers in binary. 3.3. Savitch's algorithm. 3.4. Further examples and exercises. 3.5. Answers to selected problems. 3.6. Notes -- 4. Dynamic programming. 4.1. Longest monotone subsequence problem. 4.2. All pairs shortest path problem. 4.3. Simple knapsack problem. 4.4. Activity selection problem. 4.5. Jobs with deadlines, durations and profits. 4.6. Further examples and problems. 4.7. Answers to selected problems. 4.8. Notes -- 5. Online algorithms. 5.1. List accessing problem. 5.2. Paging. 5.3. Answers to selected problems. 5.4. Notes -- 6. Randomized algorithms. 6.1. Perfect matching. 6.2. Pattern matching. 6.3. Primality testing. 6.4. Public key cryptography. 6.5. Further exercises. 6.6. Answers to selected problems. 6.7. Notes.

Online version restricted to NUS staff and students only through NUSNET.

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.


Mode of access: World Wide Web.
System requirements: Internet connectivity; World Wide Web browser.

9789814401166 (electronic bk.)


Computer algorithms.

518 / SOL

Powered by Koha