This textbook covers the mathematical foundations of the analysis of algorithms. The gist of the book is how to argue, without the burden of excessive formalism, that a given algorithm does what it is supposed to do. The two key ideas of the proof of correctness, induction and invariance, are employed in the framework of pre/post-conditions and loop invariants.
The algorithms considered are the basic and traditional algorithms of computer science, such as Greedy, Dynamic and Divide & Conquer. In addition, two classes of algorithms that rarely make it into introductory textbooks are...
This textbook covers the mathematical foundations of the analysis of algorithms. The gist of the book is how to argue, without the burden of excessive...
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...
A successor to the first edition, this updated and revised book is a great companion guide for students and engineers alike, specifically software eng...