Fr. 64.00

Practical Analysis of Algorithms

English · Paperback / Softback

Shipping usually within 6 to 7 weeks

Description

Read more

This book introduces the essential concepts of algorithm analysis required by core undergraduate and graduate computer science courses, in addition to providing a review of the fundamental mathematical notions necessary to understand these concepts. Features: includes numerous fully-worked examples and step-by-step proofs, assuming no strong mathematical background; describes the foundation of the analysis of algorithms theory in terms of the big-Oh, Omega, and Theta notations; examines recurrence relations; discusses the concepts of basic operation, traditional loop counting, and best case and worst case complexities; reviews various algorithms of a probabilistic nature, and uses elements of probability theory to compute the average complexity of algorithms such as Quicksort; introduces a variety of classical finite graph algorithms, together with an analysis of their complexity; provides an appendix on probability theory, reviewing the major definitions and theorems used in the book.

List of contents

Introduction.- Mathematical Preliminaries.- Fundamental Notations in Analysis of Algorithms.- Recurrence Relations.- Deterministic Analysis of Algorithms.- Algorithms and Probabilities.- Finite Graph Algorithms.- Appendix: Probability Theory.

About the author










Dr. Dana Vrajitoru is an Associate Professor of Computer Science at Indiana University South Bend, IN, USA. Dr. William Knight is an Emeritus Associate Professor at the same institution.

Summary

This book introduces the essential concepts of algorithm analysis required by core undergraduate and graduate computer science courses, in addition to providing a review of the fundamental mathematical notions necessary to understand these concepts. Features: includes numerous fully-worked examples and step-by-step proofs, assuming no strong mathematical background; describes the foundation of the analysis of algorithms theory in terms of the big-Oh, Omega, and Theta notations; examines recurrence relations; discusses the concepts of basic operation, traditional loop counting, and best case and worst case complexities; reviews various algorithms of a probabilistic nature, and uses elements of probability theory to compute the average complexity of algorithms such as Quicksort; introduces a variety of classical finite graph algorithms, together with an analysis of their complexity; provides an appendix on probability theory, reviewing the major definitions and theorems used in the book.

Additional text

“This textbook is a practical approach to the analysis of algorithms from a programmer’s perspective. … This book therefore does play an important role for educating programmers on how to analyze the runtime requirements of their algorithms. … The authors are in essence talking to readers when presenting the material and take a step-by-step approach when presenting the mathematical proofs. … A one-semester course on the analysis of algorithms can be crafted based on the chapters of this text.” (R. Goldberg, Computing Reviews, March, 2015)
“Vrajitoru and Knight (both, Indiana Univ.) cover standard algorithmic problems from sorting to graph theory. The authors provide ready-to-run C++ programs for many of their algorithms. It is clear from the exercises and examples that this book's content has been used in teaching undergraduates for a number of years. … Summing Up: Recommended. Lower- and upper-division undergraduates and faculty.” (P. Cull, Choice, Vol. 52 (10), June, 2015)
“The book is dedicated to an old, important and complex topic in computer science. … The multiple exercises in each section invite the readers to a deeper exploration of the subjects. The formalized style of the book is expected to attract especially young students introduced already to mathematical formalisms. The material can be used as a textbook for undergraduate courses in computer science.” (Dana Petcu, zbMATH, Vol. 1303, 2015)

Report

"This textbook is a practical approach to the analysis of algorithms from a programmer's perspective. ... This book therefore does play an important role for educating programmers on how to analyze the runtime requirements of their algorithms. ... The authors are in essence talking to readers when presenting the material and take a step-by-step approach when presenting the mathematical proofs. ... A one-semester course on the analysis of algorithms can be crafted based on the chapters of this text." (R. Goldberg, Computing Reviews, March, 2015)
"Vrajitoru and Knight (both, Indiana Univ.) cover standard algorithmic problems from sorting to graph theory. The authors provide ready-to-run C++ programs for many of their algorithms. It is clear from the exercises and examples that this book's content has been used in teaching undergraduates for a number of years. ... Summing Up: Recommended. Lower- and upper-division undergraduates and faculty." (P. Cull, Choice, Vol. 52 (10), June, 2015)
"The book is dedicated to an old, important and complex topic in computer science. ... The multiple exercises in each section invite the readers to a deeper exploration of the subjects. The formalized style of the book is expected to attract especially young students introduced already to mathematical formalisms. The material can be used as a textbook for undergraduate courses in computer science." (Dana Petcu, zbMATH, Vol. 1303, 2015)

Customer reviews

No reviews have been written for this item yet. Write the first review and be helpful to other users when they decide on a purchase.

Write a review

Thumbs up or thumbs down? Write your own review.

For messages to CeDe.ch please use the contact form.

The input fields marked * are obligatory

By submitting this form you agree to our data privacy statement.