structures and algorithms. I have followed a pattern of improving the problem solutions with
different complexities (for each problem, you will find multiple solutions with different, and
reduced, complexities). Basically, it’s an enumeration of possible solutions. With this approach,
even if you get a new question, it will show you a way to think about the possible solutions. You
will find this book useful for interview preparation, competitive exams preparation, and campus
As a job seeker, if you read the complete book, I am sure you will be able to challenge the
interviewers. If you read it as an instructor, it will help you to deliver lectures with an approach
that is easy to follow, and as a result your students will appreciate the fact that they have opted for
Computer Science / Information Technology as their degree.
This book is also useful for Engineering degree students and Masters degree students during
their academic preparations. In all the chapters you will see that there is more emphasis on
problems and their analysis rather than on theory. In each chapter, you will first read about the
basic required theory, which is then followed by a section on problem sets. In total, there are
approximately 700 algorithmic problems, all with solutions.
If you read the book as a student preparing for competitive exams for Computer Science /
Information Technology, the content covers all the required topics in full detail. While writing
this book, my main focus was to help students who are preparing for these exams.