This well organized text provides the design techniques of algorithms in a simple and straight forward manner. It describes the complete development of various algorithms along with their pseudo-codes in order to have an understanding of their applications.

The book begins with a description of the fundamental concepts and basic design techniques of algorithms. Gradually, it introduces more complex and advanced topics such as dynamic programming, backtracking and various algorithms related to graph data structure. Finally, the text elaborates on NP-hard, matrix operations and sorting network.
Primarily designed as a text for undergraduate students of Computer Science and Engineering and Information Technology (B.Tech., Computer Science, B.Tech. IT) and postgraduate students of Computer Applications (MCA), the book would also be quite useful to postgraduate students of Computer Science and IT (M.Sc., Computer Science; M.Sc., IT).

New to this Second Edition

1. A new section on Characteristics of Algorithms (Section 1.3) has been added
2. Five new sections on Insertion Sort (Section 2.2), Bubble Sort (Section 2.3), Selection Sort (Section 2.4), Shell Sort/Diminishing Increment Sort/Comb Sort (Section 2.5) and Merge Sort (Section 2.6) have been included
3. A new chapter on Divide and Conquer (Chapter 5) has also been incorporated