Design and Analysis of Algorithms

This book is designed for the way we learn and intended for one-semester course in "Design and Analysis of Algorithms". This is a very useful guide for graduate and undergraduate students and teachers of computer science. This book provides a coherent and pedagogically sound framework for learning and teaching. Its breadth of coverage insures that algorithms are carefully and comprehensively discussed with figures and tracing of algorithms. Carefully developing topics with sufficient detail, this text enables students to learn about concepts on their own, offering instructors' flexibility and allowing them to use the text as lecture reinforcement. Key Features: Focuses on simple explanations of techniques that can be applied to real-world problems. Presents algorithms with self-explanatory pseudocode. Covers a broad range of algorithms in depth, yet makes their design and analysis accessible to all levels of readers. Includes chapter summary, self-test quiz and exercises at the end of each chapter. Key to quizzes and solutions to exercises are given in appendices. Contents: Preface 1 Introduction to Algorithms 2 Disjoint Sets 3 Divide and Conquer 4 Greedy Method 5 Dynamic Programming 6 Backtracking 7 Branch and Bound 8 NP-Complete Problems Appendices References Index