Data Structure and Algorithms Books

«
»

We have compiled the list of Best Reference Books on Data Structure and Algorithms subject. These books are used by students of top universities, institutes and colleges. Here is the full list of best books on Data Structure and Algorithms along with reviews.

Kindly note that we have put a lot of effort into researching the best books on Data Structure and Algorithms subject and came out with a recommended list of best books. The table below contains the Name of these best books, their authors, publishers and an unbiased review of books on “Data Structure and Algorithms” as well as links to the Amazon website to directly purchase these books. As an Amazon Associate, we earn from qualifying purchases, but this does not impact our reviews, comparisons, and listing of these top books; the table serves as a ready reckoner list of these best books.

List of Data Structure and Algorithms Books with author’s names, publishers, and an unbiased review as well as links to the Amazon website to directly purchase these books.

1. Data Structure and Algorithms

1. “Data Structures and Algorithms Made Easy in Java: Data Structure and Algorithmic Puzzles” by Narasimha Karumanchi

“Data Structures and Algorithms Made Easy in Java: Data Structure and Algorithmic Puzzles” Book Review: The author have been able to gather all sort of interesting problems from all corners of computer science. This book offers solutions to various complex data structures and algorithmic problems with Java code. Multiple solution strategies are explored for numerous problems having different complexities. Spanning over 21 chapters, the book introduces recursion and backtracking, linked lists, stacks, queues, trees, priority queue and heaps, and disjoint sets ADT. This is followed by discussions on sorting, searching, graph algorithms, selection algorithms, symbol tables, hashing, string algorithms, and algorithms design techniques. Subsequent chapters deal with greedy algorithms, divide and conquer algorithms, dynamic programming, complexity classes, etc. in detail. This book is designed for computer science professionals and serves as a guide to prepare for interviews, exams, and campus work. The concepts of data structures are also explained very well with diagrams. The chapters are well organized with related basic data structures and problems.

2. “Data Structures and Algorithms in Python” by Michael T Goodrich and Roberto Tamassia

advertisement
advertisement
“Data Structures and Algorithms in Python” Book Review: In light of the writers’ market driving information structures books in Java and C++, this book offers a thorough, conclusive prologue to information structures in Python by legitimate writers. “Information Structures and Algorithms in Python” is the main legitimate item situated book accessible for Python information structures. Intended to give an exhaustive prologue to information constructions and calculations, including their plan, examination, and usage, the content will keep up a similar general design as “Information Structures and Algorithms in Java “and “Information Structures and Algorithms in C++.”Begins by talking about Python’s thoughtfully basic grammar, which takes into consideration a more prominent spotlight on ideas. Utilizes a predictable article arranged perspective all through the content. Presents every information structure utilizing ADTs and their particular executions and presents significant plan designs as a way to put together those usage into classes, strategies, and articles. Gives a careful conversation on the investigation and plan of key information structures. Incorporates numerous supportive Python code models, with source code on the site. Utilizations representations to introduce information designs and calculations, just as their examination, in an unmistakable, visual way. Gives many activities that advance innovativeness, assist perusers with figuring out how to think like developers, and strengthen significant ideas. Contains numerous Python-code and pseudo-code parts, and many activities, which are partitioned into generally 40% fortification activities, 40% imagination works out, and 20% programming projects.

3. “Data Structure and Algorithmic Thinking with Python” by Narasimha Karumanchi

“Data Structure and Algorithmic Thinking with Python” Book Review: This book presents solutions for complex problems in data structures and algorithms using Python code. Adopting a practical approach, multiple solutions are provided effectively for each problem with special focus on the concepts and techniques used. Spanning over 21 chapters, the book introduces recursion and backtracking, linked lists, stacks, queues, trees, priority queue and heaps, and disjoint sets ADT. This is followed by discussions on sorting, searching, graph algorithms, selection algorithms, symbol tables, hashing, string algorithms, and algorithms design techniques. Subsequent chapters deal with greedy algorithms, divide and conquer algorithms, dynamic programming, complexity classes, etc. in detail. Numerous programming puzzles are also provided to help readers improve their analytical skills. The book is intended for programmers, job hunters and people preparing for exams and interviews. This book targets on giving solutions for difficult problems in data structures and algorithms. It provides more than one solution for a single problem. It acquaint us with various possible approaches to the same problem. This book is designed to give inspiration to programmers, job seekers and those who are appearing for exams. The programming puzzles presented in this book encourages analytical thinking. It also prepares us for interviews.

4. “Data Structures and Algorithms in Java” by Lafore

“Data Structures and Algorithms in Java” Book Review: This book was written in a way that each program to improve its operation. And it also helps to clarify the algorithms. It demonstrates and considers the latest versions of the Java 2 SDK. Data Structures and Algorithms in Java, Second Edition is intended to be not difficult to peruse and comprehend albeit the actual subject is convoluted. Calculations are the strategies that product programs use to control information structures. Other than clear and basic model projects, the creator incorporates a workshop as a little show program executable on a Web program. The projects show in graphical structure what information structures resemble and how they work. In the subsequent release, the program is revamped to improve activity and explain the calculations, the model projects are changed to work with the most recent form of the Java JDK, and questions and activities will be added toward the finish of every section making the book significantly more valuable. This book provides questions and exercises at the end of each chapter. This helps us to gain deep mastery over today’s best practices. It discusses approaches for manipulating virtually any form of data with Java.
5. “Data Structures Through C in Depth” by S K Srivastava and Deepali Srivastava

“Data Structures Through C in Depth” Book Review: This book is written in a simple manner and is very easy to understand. This book is written in a basic way and is straightforward. It depicts the hypothesis with models bit by bit. It contains the depiction of composing these means in projects in a simple and justifiable way. The book gives full comprehension of each theoretical point and simple implementation in programming. This book introduces the fundamental components of C language including data structures, pointers, arrays, etc. as well as their applications in different programs. This is followed by in-depth discussion on stack, queue, linked lists, recursion, sorting, tress, searching, hashing and graphs. A separate chapter is dedicated to store management. Important examples and exercises with brief solutions are provided uniformly across its ten chapters. The book is ideal for computer science Polytechnic and UG students at both beginner and advanced levels and can also be used as a supplementary text for any advanced level algorithm books. This book will help the understudies in Self-Learning of Data structures and in agreement how these ideas are actualized in projects. This book is valuable for any degree of understudies. It covers the schedule of B.E. ,B.Tech, DOEACC Society, IGNOU.

6. “Data Structures and Algorithms” by AHO

“Data Structures and Algorithms” Book Review: This book serves as a textbook for undergraduate students and also gives the required information for graduate students. This book is bound together by a casual thought of “conceptual information types,” permitting perusers to analyze various usage of a similar idea. Calculation plan methods are likewise pushed and essential calculation investigation is covered. It acts as a book for the first course on data structures and algorithms. It secures a style and content relevant to current programming. This book assumes the familiarity with a high-level programming language like Pascal. The book spans matching to wide-ranging topics.

7. “Data Structure and Algorithm in C++” by Adam Drozdek

advertisement
“Data Structure and Algorithm in C++” Book Review: A refreshed, creative way to deal with information constructions and calculations Composed by a creator group of specialists in their fields, this definitive guide demystifies even the most troublesome numerical ideas so you can acquire an away form of information constructions and calculations in C++. The unmatched creator group joins the article situated plan worldview utilizing C++ as the execution language, while likewise giving instinct and examination of key calculations. Offers an interesting interactive media design for learning the essentials of information constructions and calculations Allows you to envision key scientific ideas, find out about the latest experiences in the field, and do information structure configuration Provides clear methodologies for creating programs Features a reasonable, straightforward composing style that separates even the most troublesome numerical ideas Expanding on the achievement of the main release, this new form offers you an imaginative way to deal with major information constructions and calculations.

8. “Data Structures using C and C++” by Y Langsam

“Data Structures using C and C++” Book Review: This book explores the basics of data structures and their implementation to solve problems using a programming language. The book also demonstrates the usage of C language for advanced programming and the procedure to develop advanced features of C++. The text systematically analyzes algorithms in a step- by-step manner to solve real problems. All the classes in C++ as well as function members, inheritance and object orientation, and polymorphism are also explained. Along with tested and debugged working programs in C and C++, the book also features an example of implementing abstract data types in C++.

9. “Algorithms” by T H Cormen

“Introduction to Algorithms” Book Review: The book offers a comprehensive coverage of the design and analysis of algorithms, written in English and pseudo-code for easier understandability. Separate chapters on the role of algorithms, probabilistic analysis and randomized algorithms, and linear programming are provided. Advanced topics like van Emde Boas trees, multithreaded algorithms, dynamic programming, and edge-based flow are also covered in detail. An appendix on matrices along with numerous examples and problems are provided for practice. Both students and professionals can refer to this book.

advertisement
10. “Data Structures Using C and C++” by Y Langsam

Book Review: This book on fundamentals of data structures focuses on abstract concepts, explains how the concepts are useful in problem solving, explains conversion of abstraction to concrete using programming language and illustrates the advanced features of C++. The book covers the entire C++ language along with many tested and debugged working programs in C and C++. The book also analyses various algorithms thereby providing step-by-step solutions to real problems. The book also covers the concepts of classes, function members, inheritance, abstract data types and polymorphism.

11. “Data Structures” by Seymour Lipschutz

“Data Structures” Book Review: This book presents a detailed coverage of the fundamental theory of data structures including strings, arrays, linked lists, stacks, queues, records & pointers, recursion, trees, graphs, sorting, and searching. An exhaustive set of problems and questions are provided in varying levels of difficulty for better practice. The book provides a large number of solved problems, examples and practice exercises. This book can be used by undergraduate students in computer science and related branches having a course in Data Structures and Algorithms, anyone trying to learn DS Algo and also the working professionals.

12. “Data Structures and Algorithms: Concepts – Techniques and Applications” by G A V Pai

“Data Structures and Algorithms: Concepts, Techniques, and Applications” Book Review: This book explains the concepts, techniques, and applications of data structures and algorithms without using any programming language. Numerous programming assignments and problems are included to facilitate a better understanding of the implementation of data structures. Illustrations and schematic diagrams are also added for better visualization of the subject. The book is intended for a course on data structures at the undergraduate level.

13. “Data Structure Through C” by Yashavant P Kanetkar

“Data Structures through C” Book Review: This book explains the basic underlying principles of data structures using C programming language. Key concepts like arrays, algorithm analysis, strings, queues, trees and graphs are discussed in detail. Numerous programming examples are provided for better explanation of fundamental concepts. The CD attached with the book includes well-designed animations to elucidate complex procedures related to data structures described in the book. This book is intended for students and computer professionals.

14. “Data Structures and Algorithm Analysis in C” by Weiss

“Data Structures and Algorithm Analysis in C” Book Review: This book presents a comprehensive treatment of algorithms and data structures using C and C++ programming languages. After learning about stacks, lists, queues, trees, and ADTs, readers can also learn to reduce time constraints and develop programs efficiently by analyzing the feasibility of an algorithm before it is coded. Separate chapters are dedicated to amortized analysis and advanced data structures like the Fibonacci heap, binary heaps, sorting, and NP-completeness. Each type of algorithm is systematically analyzed with the help of examples and illustrations.

11. “An Introduction to Data Structures and Algorithms (Progress in Theoretical Computer Science)” by J A Storer and John C Cherniavsky
12. “Algorithms and Data Structures: The Basic Toolbox” by Kurt Mehlhorn and Peter Sanders

“Algorithms and Data Structures: The Basic Toolbox” Book Review: This book is suitable for every computer scientist and every professional programmer. This book explains about structures that allow efficient organization and retrieval of data, frequently used algorithms and basic techniques for modeling, understanding and solving algorithmic problems. It acts as a guide for students and professionals familiar with programming and basic mathematical language. This book describes arrays and linked lists, hash tables and associative arrays, sorting and selection, priority queues, sorted sequences, graph representation, graph traversal, shortest paths, minimum spanning trees and optimization. Algorithm engineering, memory hierarchies, algorithm libraries and certifying algorithms are highlighted in this book. Pictures, words and high level pseudocode are used to explain algorithm and programming languages like C++ and Java. Many exercises, examples and pictures are present in the book. Some theorems and proofs are there in the book to help us solve mathematical problems. Lastly, this book provides generalizations and advanced solutions.

13. “New Data Structures and Algorithms for Logic Synthesis and Verification” by Luca Gaetano Amaru

“New Data Structures and Algorithms for Logic Synthesis and Verification” Book Review: This book is for the students who want to gain core knowledge of logics and algorithms. This book has complete information on properties of logic circuits. It has explained logic primitives for electronic design automation tools. This book mentions tricks for the betterment of logic representation, manipulation and optimization tasks. This book has EDA problems and their solutions.


2. Analysis of Data Structures and Algorithms

1. “Data Structures and Algorithms Made Easy: Data Structures and Algorithmic Puzzles” by Narasimha Karumanchi

“Data Structures and Algorithms Made Easy: Data Structures and Algorithmic Puzzles” Book Review: This book acts as a guide for computer science professionals. It furnishes solutions to complex data structures and algorithms. This book is coded in C/C++. It serves as an interview and exam guide for computer scientists. It is a solution Bank for various difficult problems related to data structures and algorithms. This book covers various topics like stacks, queues, trees, priority, queue and heaps, disjoint sets ADT. It also presents hashing, selection algorithms and symbol tables.

2. “Coding Interview Questions” by Narasimha Karumanchi

“Coding Interview Questions” Book Review: This book provides basics of programming, recursion and backtracking. It discusses linked lists, stacks, queues, trees, priority queues and heaps. The book also explains graph algorithms, sorting and searching, selection algorithms, symbol tables, hashing, string algorithms, greedy algorithms, DP and complexities. This book also presents greedy algorithms, divide and conquer algorithms. It also avails the explanation for dynamic programming, complexity classes, design interview questions, etc. The book also has a large number of solved examples, problems and programs. This book can be used by undergraduate students in computer science and related branches having a course in Data Structures and Algorithms, anyone trying to learn DS Algorithms and also the working professionals.
3. “Introduction to Algorithms” by Thomas H Cormen and Charles E Leiserson

“Introduction to Algorithms” Book Review: This book mixes thoroughness and soundness. It covers a wide range of algorithms in depth. It also makes their design and analysis available to all levels of readers. Each chapter is relatively self-contained and can be used as a unit of study. It explains the algorithms in English and in a pseudocode. These algorithms are designed to be readable by anyone who has done a little programming. This book keeps the descriptions elementary without sacrificing depth of coverage or mathematical rigor.

4. “Algorithms and Data Structures” by imusti


3. Algorithms

1. “Introduction to Algorithms” by T H Cormen and C L Leiserson

Book Review: This book contains a number of algorithms and provides in-depth analysis and design of those algorithms which is well understood by readers at all levels. In addition, the algorithms also contain pseudo code which is easily understood by the readers. There are chapters which cover new topics like linear programming, randomized algorithms, probabilistic analysis and multithreaded algorithms. Improvised algorithms on Dynamic Programming and Greedy Techniques are also included in the book. The book also contains special algorithms on string matching, computational geometry and number theory.

2. “Algorithm Design” by J Kleinberg and E Tardos

Book Review: This book contains several methods which identify the problems across a range of computing applications, develops algorithm design techniques for those problems and identifies efficient solutions to those problems. The book establishes a relationship between the algorithmic ideas and formulated problems for which algorithmic design and analysis takes place. The book also offers insight on identifying the problems in complex situations from different computing areas thereby designing efficient algorithms for those problems.

3. “Data Structures and Their Algorithms” by Harry R Lewis and Larry Denenberg

“Data Structures and Their Algorithms” Book Review: This book teaches methods for organizing, reorganizing, exploring, and retrieving data in digital computers, and the mathematical analysis of those techniques. The authors present analyses that are relatively brief and non-technical but illuminate the important performance characteristics of the algorithms. The authors have adopted a pseudocode notation that is readily understandable to programmers but has a simple syntax.

4. “Algorithmic Graph Theory” by A Gibbons

Book Review: The book contains the concepts of pure and applied graph theory that include spanning trees, network flow, connectivity, traversals and matching. It also covers a range of classical algorithms thereby focusing on algorithms and their complexity. The algorithms are categorized based on the ones which are intractable and the ones which have known efficient solutions. Efficient approximation algorithms are being given for intractable problems. Programming languages like Pascal are used to describe algorithmic problems.

5. “Algorithm Design: Foundations, Analysis and Internet Examples” by Michael T Goodrich and Roberto Tamassia

Book Review: A textbook that covers the introduction, design, implementation and analysis of computer algorithms and data structures from the latest point of view. It strikes a balance between theoretical analysis techniques and algorithmic design patterns and experimental methods for algorithm engineering. Classified into 4 units: fundamental tools, graph algorithms, internet algorithmics, and additional topics. The 1st section deals with algorithm analysis, basic data structures, search trees and skip lists, sorting, sets and selection, and fundamental techniques. Graphs, weighted graphs, network flow and matching are the topics discussed in section 2. The section on internet algorithmics discuss text processing, number theory and cryptography, and network algorithms. Computational geometry, NP-completeness, algorithmic frameworks are the additional topics explored with useful mathematical facts, bibliography and an index at the end of the book. The book also provides practical and theoretical techniques as well as experimental methods for the engineering of algorithms.
6. “The Algorithm Design Manual” by Steven S Skiena

“The Algorithm Design Manual” Book Review: This volume helps take some of the “mystery” out of identifying and dealing with key algorithms. Coverage is divided into two parts, the first being a general guide to techniques for the design and analysis of computer algorithms. The second is a reference section, which includes a catalog of the 75 most important algorithmic problems. Provides up-to-date links leading to the very best algorithm implementations available in C, C++, and Java.

7. “Data Structures and Algorithms Made Easy: Data Structures and Algorithmic Puzzles” by Narasimha Karumanchi

“Data Structures and Algorithms Made Easy: Data Structures and Algorithmic Puzzle” Book Review: It contains lots of figures showing how the data structure is modified and updated. The problem section after each chapter listed lots of relevant questions with solutions (code included). The book could also be good for a professional who just want a quick review of important data structure concepts and implementations. There are various answers for every issue and the book is coded in C/C++, it comes helpful as a meeting and test control for PC researchers. It very well may be utilized as an instructional pamphlet by those pursuers in the software engineering industry. This book fills in as a manual for plan for meetings, tests, and grounds work. So, this book offers answers for different complex information structures and algorithmic issues. The book covers various topics like recursion and backtracking, linked lists, stacks and queues, trees, priority queues and heaps and disjoint set ADT. The book also explains graph algorithms, sorting and searching, selection algorithms, symbol tables, hashing, string algorithms, greedy algorithms, DP and complexities. The book also consists of a large number of solved problems and exercises. This book can be used by undergraduate students in computer science and related branches having a course in Data Structures and Algorithms, anyone trying to learn DS Algorithm and also the working professionals.
8. “Grokking Algorithms: An illustrated guide for programmers and other curious people” by Aditya Bhargava

“Grokking Algorithms: An illustrated guide for programmers and other curious people” Book Review: This book is a friendly guide that teaches you how to apply common algorithms to the practical problems you face every day as a programmer. Each carefully presented example includes helpful diagrams and fully annotated code samples in Python. By the end of this book, you will know some of the most widely applicable algorithms as well as how and when to use them.

9. “Algorithms in a Nutshell: A Practical Guide” by George T Heineman and Gary Pollice

“Algorithms in a Nutshell: A Practical Guide” Book Review: This book contains a large number of existing algorithms for solving a variety of problems, and helps you select and implement the right algorithm for your needs. This book provides efficient code solutions in several programming languages that you can easily adapt to a specific project. Each major algorithm is presented in the style of a design pattern that includes information to help you understand why and when the algorithm is appropriate.

10. “Cracking the Coding Interview: 189 Programming Questions and Solutions” by Gayle Laakmann McDowell

“Cracking the Coding Interview: 189 Programming Questions and Solutions” Book Review: This book teaches you what you need to know and enabling you to perform at your very best. It ranges from the basics to the trickiest algorithm problems. This book contains techniques to prepare for and ace the soft side of the interview. We can get to know how top companies like Google and Facebook hire developers. This book is a deeply technical book and focuses on the software engineering skills.

11. “Randomized Algorithms” by Rajeev Motwani and Prabhakar Raghavan

Book Review: This book provides an introduction of the basic concepts and theories that is needed for the design and analysis of randomized algorithms. The book provides algorithmic examples to illustrate the use of tools in concrete setting. Each chapter in the book focuses on the essential area to which randomized algorithms can be applied thereby providing a comprehensive and representative selection of algorithms which can be used in those areas. This book is very useful for graduate and undergraduate students and is a very good reference book for researchers and professionals.

12. “Online Computation and Competitive Analysis” by Allan Borodin and Ran El-Yaniv

Book Review: The book provides detailed presentation of competitive analysis with the help of an attractive framework in which the analysis and solving of problems is done. The algorithm quality is analysed within the framework and is measured in relation with the best possible performance of an algorithm. The book starts with basic definitions of competitive analysis model along with the description of important techniques through many examples. These examples include list accessing, paging in virtual memory system, routing and load balancing in network systems. The book also contains various concepts of game theory and decision theory. This book is useful for researchers and graduate students in the field of operations research.

13. “Distributed Algorithms” by Nancy Lynch

Book Review: This book deals with the designing, implementation and analysis of distributed algorithms. The book contains important algorithms which are proved correct and have their complexity analysed according to the defined complexity measures. The various problems covered in the book include resource allocation, distributed process consensus, data consistency, deadlock detection and many others. The book also deals with important algorithms, problems and results. The provides the readers with mathematical tools for new algorithm design and results. The book also provides tactics to carefully reason the algorithms, provide specifications for their behavior, prove their correctness and measure their performance.

14. “Data Structures and Network Algorithms” by Robert Endre Tarjan

Book Review: This book presents the rapid growth that is taking place in the field of combinatorial algorithms. The combinatorial algorithms are based on not only the outcomes of combinatorics and graph theory, but also on the development of new data structures and technologies for analyzing algorithms. The book covers four network optimization problems which includes development of the data structures they use as well as the analysis of their running time. The book provides the readers with the practical understanding of the concepts of data structures and network algorithms thereby facilitating easy implementation and an appreciation of the depth and beauty of the field of graph algorithms.

15. “An Introduction to Computational Learning Theory” by M Kearns and U Vazirani

Book Review: The book presents various topics in the field of theory of computational learning which is very useful for researchers and students in the field of neural networks, artificial intelligence, statistics and computer science theory. The book examines the formal models of induction thereby inventing common methods that lie below efficient learning algorithms thereby identifying the computational impediments to learning. The book also presents new proofs of established theorems and presentations of standard proofs. Various other topics covered in the book are motivation, definitions and basic results which can be either positive or negative. The book also presents the equivalence of strong and weak learning, relationship between learning and cryptography, limitations of efficient learning and many algorithms for finite automata learning.

16. “Cracking the C, C++, and Java Interview ” by S G Ganesh and Subhash K U

“Cracking the C, C++, and Java Interview” Book Review: In this book questions are categorized in three categories-multiple choice, programming aptitude and programming theory. The questions and answers in the book are of high quality. The explanations provided are also very clear and up-to-the-point.This book covers major interview questions and solutions asked in Tech Companies.

17. “Introduction to Algorithms: A Creative Approach” by U Manber

“Introduction to Algorithms: A Creative Approach” Book Review: This book focuses on the creative aspects of algorithm design. This includes proving mathematical theorems by the induction method. The book also includes the methods of designing combinatorial algorithms. The book contains numerous problems and examples. This book improves the reader’s problem-solving abilities and understanding of the principles behind algorithm design.

18. “Algorithms” by Robert Sedgewick

“Algorithms” Book Review: This book covers important computer algorithms. It includes data structures and algorithms for sorting, searching, graph processing and string processing. It also includes fifty algorithms every programmer should know. This book is for professional programmers and computer science students. It includes full java implementations. It also has dynamic visualizations and lecture slides. Also, the MOOC related to this book is accessible via the link at algs4.cs.princeton.edu.

19. “Combinatorial Search: From Algorithms to Systems” by Youssef Hamadi

“Combinatorial Search: From Algorithms to Systems” Book Review: In this book the author focuses on knowledge sharing in combinatorial search. The contents of the book are :- Introduction, Boosting Distributed Constraint Networks, Parallel Tree Search for Satisfiability, Parallel Local Search for Satisfiability, Learning Variable Dependencies, Continuous Search, Autonomous Search, Conclusion and Perspectives. The book is suitable for researchers, practitioners, and graduate students working in the areas of optimization, search, constraints, and computational complexity.

20. “Algorithms to Live By: The Computer Science of Human Decisions” by Brian Christian and Griffiths

“Algorithms to Live By: The Computer Science of Human Decisions” Book Review:This book covers various topics like optimal stopping, sorting, caching, scheduling, Bayes’s rule, overfitting and relaxation. The book also covers randomness, networking and game theory. This book can be used by anyone who wants to learn about programming and algorithms.


4. Fundamentals of Algorithms

1. “Fundamental of Computer Algorithms” by Ellis Horowitz

“Fundamental of Computer Algorithms” Book Review: This book acts as a textbook for upper and graduate level courses in algorithms. It covers the fundamentals of design techniques and computer algorithms. Illustrative examples present in the book helps the reader in understanding the concepts well.

2. “Fundamentals of Machine Learning for Predictive Data Analytics – Algorithms, Worked Examples, and Case Studies” by John D Kelleher and Brian Mac Namee

“Fundamentals of Machine Learning for Predictive Data Analytics – Algorithms, Worked Examples, and Case Studies” Book Review: This book describes machine learning which is used in predictive data analysis. It includes detailed information about important machine learning approaches that are used in predictive data analytics, covering both theoretical concepts and practical applications. Worked examples illustrate and help the readers in different case studies. The book also presents techniques for evaluating prediction models and offers case studies which help in describing specific data analytics projects through each phase of development. It is mainly designed for undergraduate students in computer science, engineering, mathematics, or statistics. The book can also be helpful for graduate students in the same stream.

3. “Algorithms in C++: Fundamentals, Data Structures, Sorting, Searching” by Sedgewick

“Algorithms in C++: Fundamentals, Data Structures, Sorting, Searching” Book Review: This book describes the recent comprehensive coverage of important algorithms and data structures. It is written by Christopher Van Wyk and Robert Sedgewick. The book includes recent C++ implementations which expresses different methods in a concise and direct way. In addition, this book helps programmers and provides them practical examples to test them on real applications.

4. “Discrete Inverse Problems: Insight and Algorithms (Fundamentals of Algorithms)” by Per Christian Hansen

“Discrete Inverse Problems: Insight and Algorithms (Fundamentals of Algorithms)” Book Review: This book discusses practical treatment of inverse problems by means of numerical methods and focuses on basic mathematical as well as computational aspects. It includes tutorial exercises which help the reader in providing hands-on experience with different methods. This book is mainly designed for graduate students, researchers and professionals in engineering. It also helps readers with proper background knowledge to solve simple inverse problems.


5. Design and Analysis of Algorithms

1. “Introduction to Algorithms (Eastern Economy Edition)” by Thomas H Cormen and Charles E Leiserson

“Introduction to Algorithms” Book Review: This text provides an overview and introduction to the contemporary study of computer algorithms. Discusses a wide range of algorithms with design and analysis easily understandable by the reader. Available in 3rd edition, each chapter includes an algorithm, a design technique, an application area or a related topic. Algorithms are simply designed and narrated for those experienced with little programming. The explanations given are rich even though the description is uncomplicated. 2 new chapters on Van Emde Boas trees and Multithreaded Algorithms are included along with considerable insertions to the chapter on Recurrences (now “Divide and Conquer”). It presents treatment of dynamic programming and greedy algorithms in an improvised way and a new idea of edge-based flow in the material on flow networks. Recommended for students and technical professionals in data structures and algorithms. It explores engineering issues in algorithm design and mathematical aspects too. The book is categorized into foundations, sorting and order statistics, data structures, advanced designs and analysis techniques, advanced data structures, graph algorithms, and selected topics as 7 sections. The first section discusses the role of algorithms in computing, analysing and designing algorithms, insertion sort, growth of functions, recurrences, probabilistic analysis and randomized algorithms. The next section discusses heapsort, quicksort, sorting in linear time, and medians and order statistics. Sorting networks, matrix operations, linear programming, polynomials and FFT, number-theoretic algorithms, string matching, computational geometry, and NP completeness. Solved out examples and more problems are given at the end of each chapter. The text ends with an appendix on mathematical background.

2. “Design and Analysis of Computer Algorithms” by AHO

“The Design and Analysis of Computer Algorithms” Book Review: A textbook that provides foundation on basic data structures and programming techniques frequently used in methodical algorithms. The fundamental concepts of algorithms are explored in this text. The text introduces the reader to models of computation followed by design of efficient algorithms, sorting and order statistics, data structures for set manipulation problems, algorithms on graphs, matrix multiplication and related operations, Fast Fourier Transform and its applications, integer and polynomial arithmetic, pattern matching algorithms, NP complete problems, some provably interactive problems, and lower bounds on numbers of arithmetic. With a bibliography and index, the book ends with much more problems and exercises so that the students can better learn the concepts and better prepare him for exams.

3. “Fundamentals of Computer Algorithms(second edition)” by Sahni Horowitz

“Fundamentals of Data Structures in C” Book Review: This book acts as a textbook for upper and graduate level courses in algorithms. This text is more of a reference material for professionals that provides a comprehensive and thorough overview of all forms of data structure implementation in ANSI C. Stacks, queues, lists, search structures, advanced tree structures are some of the concepts discussed in this text. Latest variations of data structure have also found their way in this text which include fibonacci heaps, splay trees, red-black trees, 2-3 trees, 2-3-4 trees, leftist trees, binomial heaps, min-max heaps, and deaps. Written in a comprehensive and student-friendly manner, each chapter ends with solved out algorithms and more questions where the student can test his ability on programming and prepare for the exams. Further the book emphasises more on design techniques than individual algorithms.

4. “Introduction to the Design and Analysis of Algorithms” by Anany Levitin

“Introduction to the Design and Analysis of Algorithms” Book Review: This text is for those interested more in learning algorithms and it is based on a new categorization of algorithm design techniques and a comprehensible portrayal of analysis methods. It provides a thorough understanding of the concepts in the introduction before providing a fixed study of each technique. The book starts with a basic introduction followed by a study on fundamentals of the analysis of algorithm efficiency. Brute force, divide-and-conquer, decrease-and-conquer, transform-and-conquer, space and time tradeoffs, dynamic programming, greedy technique, iterative improvement, limitations of algorithm power and coping with its limitations are some of the topics discussed broadly. To drive the reader’s interest and to build up their skills in computational solving, popular puzzles are provided. Summary of each chapter, solution manual and hints to the exercises are provided at the finish of each chapter.

5. “Design and Analysis of Algorithms” by S Sridhar

“Design and Analysis of Algorithms” Book Review: This text is recommended for B.Tech/B.E (CSE/IT), M.Tech/M.E (CSE/IT), MCA, M.Sc (CS/IT). It discusses fundamental concepts on algorithms, framework for algorithm analysis, asymptotic notations, sorting algorithms, recurrences, divide-and-conquer approach, dynamic programming approach, greedy algorithms, graph algorithms, backtracking, string matching, NP completeness, NP-complete problems (with proofs). The text is written in a simple language with attention on sorting algorithms, NP completeness and approximation algorithms. About 250 worked out examples are provided with a reference table for time complexity of algorithms, previous 3 years solved university question papers, short type questions with answers, solved GATE question papers as appendices at the end of this text.

6. “Design and Analysis of Algorithms” by Dave

“Design and Analysis of Algorithms” Book Review: This text is divided into 2 parts. Part 1 is dedicated to algorithm design whereas Part 2 is dedicated to algorithm analysis. The former discusses problem solving with a computer, top-down design, iterative algorithm design issues, computation models and design by refinement, proof rules – basics, design by proof rules, design using recursion, divide-and-conquer method, greedy method, dynamic programming, backtracking, branch and bound, natural algorithms – GA, ANN, SA, TS. Second part deals with efficiency of algorithms, examples of complexity calculations, time-space trade-off, tractable and non-tractable problems, some NP and NP-complete problems, randomized and approximate algorithms, formal specifications-model oriented and algebraic. The book ends with a bibliography and 5 appendices.

7. “Design And Analysis of Algorithms” by Shewta Bajaj Mundra

“Design and Analysis of Algorithms” Book Review: Written in a simple style, this text is recommended for practising programmers. The book begins with an introduction to algorithms subsequently afterward growth order, elementary data structure, divide-and-conquer strategy, greedy method, dynamic programming, and NP-completeness. Each chapter starts with an overview of it and ends with a summary and few exercises. The text ends with a question bank where the students can easily prepare for exams and understand the lesson better. An appendix and a bibliography with more than 100 citations are also provided.

8. “An Introduction to Parallel Computing: Design and Analysis of Algorithms” by GRAMA

“An Introduction to Parallel Computing: Design and Analysis of Algorithms” Book Review: This text provides a basic foundation at the techniques for the design and analysis of parallel algorithms and programming using commercially available platforms. It explores principles of parallel algorithms design and different parallel programming methods MPI, POSIX threads and OpenMP are also studied. The text is divided into 3 sections: basics, parallel programming, parallel algorithms and applications. Parallel programming platforms, principles of parallel algorithm design, analytical modelling of parallel programs, and basic communication operations are the topics discussed in Part 1. Part 2 deals with parallel programming paradigms, programming shared address space platforms, and programming message passing platforms. Part 3 discusses dense matrix algorithms, sorting, graph algorithms, discrete optimization problems, dynamic programming, fast fourier transform, and solving sparse systems of linear equations. Problems are provided at the end of each chapter to work out so that the student can get an understanding of the algorithms.


6. Advance Algorithmic Analysis

1. “GIS Algorithms (SAGE Advances in Geographic Information Science and Technology Series)” by Ningchuan Xiao

“GIS Algorithms (SAGE Advances in Geographic Information Science and Technology Series)” Book Review: This book is meant for GIS programmers. It discusses the geographical algorithms for vector and point-based analysis. It also explains the network travel analysis. It is helpful to build up GIS functions into python software. This covers the areas of geometric algorithms, spatial indexing, spatial analysis and modelling. It contains python examples and students exercises.

2. “Guide to Medical Image Analysis: Methods and Algorithms (Advances in Computer Vision and Pattern Recognition)” by Klaus D Toennies

“Guide to Medical Image Analysis: Methods and Algorithms (Advances in Computer Vision and Pattern Recognition)” Book Review: This book is meant for students who took courses on medical image analysis. It is also useful for professionals in medical imaging technology and computer scientists. This book explains the medical image analysis. It discusses common imaging techniques, reconstruction techniques, and image artefacts. It also deals with the techniques required for the enhancement of contrast and edges. It explains the HL7 and DICOM standards. It describes object detection, segment techniques and methods to compute normalization transformation. It includes learning objectives, exercises, and remarks for each chapter.

3. “System Theory, the Schur Algorithm and Multidimensional Analysis (Operator Theory: Advances and Applications)” by Victor Vinnikov and Daniel Alpay

“System Theory, the Schur Algorithm and Multidimensional Analysis (Operator Theory: Advances and Applications)” Book Review: It contains articles presented at the workshop on multidimensional generalizations and related topics. It discusses the current activity in operator theory and system theory. The topics included are Schur analysis, canonical forms for pairs of quaternionic matrices, algebras of functions of continuous functions and many more. This book will be useful for electrical engineers and theoretical physicists.

4. “Advances in Gabor Analysis (Applied and Numerical Harmonic Analysis)” by Hans G Feichtinger and Thomas Strohmer

“Advances in Gabor Analysis (Applied and Numerical Harmonic Analysis)” Book Review: This book will be useful for students, researchers and professionals in mathematical physics, applied mathematics and electrical and communication engineering. It explains the developments in Gabor analysis and applications of digital and wireless communications. It describes uncertainty principles for time-frequency representations and zak transforms. It also deals with Gabor multipliers, Gabor analysis and operator algebras. This book contains a wide range of topics and applications related to Gabor analysis.

5. “Vulnerability Analysis and Defense for the Internet (Advances in Information Security)” by H Joseph and B Singh

“Vulnerability Analysis and Defense for the Internet (Advances in Information Security)” Book Review: It is an advanced-level secondary textbook in computer science. It provides a detailed analysis of a protocol and concepts of reverse engineering. It explains how to identify the vulnerability in an application and the effects of vulnerability in the software. It describes the complexity and theory behind vulnerability. Security holes in a computer and networks are classified. It provides pseudocode and flowcharts for the identification of vulnerability.

6. “Recent Advances in Algorithms and Combinatorics (CMS Books in Mathematics)” by Bruce A Reed and Claudia L Linhares-Sales

“Recent Advances in Algorithms and Combinatorics (CMS Books in mathematics)” Book Review: This book is meant for researchers in the field of combinatorics, graph theory and theoretical computer science. It explains the current development in algorithmics combinatorics. It also discusses the search for patterns in DNA and protein sequences. It describes the theory of semi-definite programming and its role in combinatorial optimization. It deals with algorithm aspects of tree decompositions and their applications to the theory of databases.

7. “Advances in Classification and Data Analysis (Studies in Classification, Data Analysis, and Knowledge Organization)” by Roberto Rocci and Simone Borra

“Advances in Classification and Data Analysis (Studies in Classification, Data Analysis, and Knowledge Organization)” Book Review: This book discusses the new developments in classification and multivariate analysis. It covers discriminant analysis, proximity analysis, multidimensional scaling and many more. It provides new methods and algorithms of modern statistics with the application. It would be useful for researchers and applied statisticians.

8. “Advances in Algorithms, Languages, and Complexity” by Ding-Zhu Du and Ker-I Ko

“Advances in Algorithms, Languages, and Complexity” Book Review: It contains survey papers on current advancement in algorithms and formal languages. It also includes computational complexity papers. It will be useful for students and researchers in the field of analysis of algorithms and computational complexity.

9. “Introduction to Design and Analysis of Algorithms (Anna University)” by Anany Levitin

“Introduction to Design and Analysis of Algorithms (Anna University)” Book Review: This book is meant for students of computer science engineering. It follows Anna university syllabus. It discusses the design and analysis of algorithms. It covers both recursive and non-recursive algorithms. It explains the fundamentals of the analysis of algorithm efficiency. It covers topics like brute force and exhaustive search and many more. It also describes the limitations of algorithms and ways to overcome them. It contains puzzles and games which makes the learning fun. It includes a chapter summary, exercises and practice questions.


7. Computer Programming and Algorithms

1. “Introduction to Algorithms and Java” by Thomas H Cormen

Book Review: This book very nicely combines rigor and comprehensiveness. The book also contains numerous algorithms that make design and analysis accessible to readers at all the levels. The book also contains pseudo code which is understood by the readers who have done a little programming. The book also contains newer chapters on algorithms roles, randomized algorithms, probabilistic analysis and linear programming. The book also contains two additional chapters on trees and multithreaded algorithms. The book additionally also contains new exercises and problems.

2. “Data Structures Algorithms and Object Oriented Programming” by G L Heileman

Book Review: This book is very suitable for the data structures course that is taken by majors in the field of computer science and engineering. The book makes use of C++ and object oriented programming methodologies to teach data structures. The book also presents concrete examples of object oriented programming which is very beneficial to students. This is a very good reference book for professionals. The book also deals with the methodologies of dynamic programming and greedy algorithms. The book also offers an innovative approach to fundamental data structures and algorithms.

3. “Data Structures and Algorithms” by Alfred V Aho Jeffrey Ullman

Book Review: This book explains various concepts pertaining to data structures by providing an informal notion of abstract data types. The book also allows the readers to carry out comparisons of different implementations of the same concept of data structures and algorithms. The book also focuses on algorithmic design techniques and basic algorithm analysis. Most of the programs in the book are written using Pascal. The book also offers an innovative approach to fundamental data structures and algorithms.

4. “Data Structures and Algorithms in C++” by Michael T Goodrich

Book Review: This is an updated textbook in the field of data structures and algorithms. The book very easily explains difficult mathematical concepts as well thereby providing a clear understanding of data structures and algorithms in C++. The book visualizes key analytical concepts, provides clear approaches for program development and a unique format for learning the basics of data structure and algorithms. The book also comes with a unique style of writing that breaks down even the most difficult mathematical concepts.

5. “Guide to Programming and Algorithms Using R” by Ergul

“Guide to Programming and Algorithms Using R” Book Review: The book covers all the basic concepts of programming and algorithms. The topics like loops, recursions, program and algorithm efficiency and accuracy, sorting, linear systems of equations, and file processing are thoroughly explained. Each chapter ends with plenty of exercises. It contains three mini projects for self assessment of the readers. The content of this book is applicable to many programming languages. The book will be helpful for the undergraduate students of programming and algorithms irrespective of their courses.

6. “Game Programming Algorithms and Techniques: A Platform-Agnostic Approach” by Sanjay Madhav

“Game Programming Algorithms and Techniques: A Platform-Agnostic Approach” Book Review: The book covers the fundamental and modern techniques for working with 2D and 3D graphics, physics, artificial intelligence, and cameras. The topics like Game time management, speed control, Vectors, matrices, and linear algebra for 3D games, coordinate spaces, lighting and shading, z-buffering, and quaternions, sound events, 3D audio, and digital signal processing, collision detection, numeric integration, pathfinding, state-based behaviors, planning, and basics of networked games including protocols and network topology are discussed in this book. The concepts are explained using pseudocode so that will be common for many programming languages. The book also features detailed analysis of two complete games namely, a 2D iOS side-scroller and a 3D PC/Mac/Linux tower defense game. Each chapter ends with a bunch of review questions for clearing readers concepts and doubts.

7. “Stochastic Linear Programming Algorithms” by Mayer

“Stochastic Linear Programming Algorithms” Book Review: The book begins with introduction of algorithms, united approaches to decomposition methods, and regularized counterparts. Later section of the book features computer implementation of the given methods and description of the testing environment based on a model management system. The methods like regularized decomposition, stochastic decomposition and successive discrete approximation methods for two stage problems, cutting plane methods, and a reduced gradient method for jointly chance constrained problems are discussed in this book. The computational results calculated with different solution techniques of stochastic programming are compared in this book.

8. “The Art of Computer Programming: Combinatorial Algorithms” by Donald E Knuth

“The Art of Computer Programming: Combinatorial Algorithms” Book Review: The book starts with the very basics of programming and algorithms. The broadword computation and combinatorial generation are discussed in detail. The chapters cover topics like listing fundamental combinatorial objects, permutations, partitions, and trees. The problems faced in research are mentioned in this book. The contemporary topic like binary decision diagrams is highlighted. Plenty of examples, exercises, and problems along with their solutions or hints are included in this piece of writing.

9. “A Concise and Practical Introduction to Programming Algorithms in Java” by Nielsen Frank

“A Concise and Practical Introduction to Programming Algorithms in Java” Book Review: The book introduces the basic concepts and fundamental principles of algorithms in java. The concepts used for turning algorithms to programs in java are clearly mentioned. The topics like fundamental notions of variables, expressions and assignments with type checking, conditional and loop statements, functions with pass-by-value arguments/pass-by-reference arguments, recursion, fundamental, sequential and bisection search techniques, and basic iterative and recursive sorting algorithms are thoroughly explained. The book contains many examples and exercises for self-study and self-assessment.

10. “Scientific Programming: C-Language, Algorithms and Models in Science” by Sapienza and Giovanni Organtini

“Scientific Programming: C-Language, Algorithms and Models in Science” Book Review: The book covers basics as well as syntactic aspects of C language. The algorithms used in scientific applications like searching, graphs, statistics, equation solving, and Monte Carlo methods are thoroughly explained in this book. It highlights the process of translating algorithms into an error free computer program. The book enables its readers to analyze a scientific problem and then write a computer program in C language for solving that problem. It will be a useful text for the students who want to learn advanced C-language for their respective fields.


8. Programming and Data Structures

1. “The C Programming Language” by Brian W Kernighan and Dennis M Ritchie

Book Review: This book is a complete guide to ANSI standard C programming language. This book focuses on the set of operators provided by C language, types of expressions, improved control flow and data structures. Many examples and problem sets are included to clarify the problems pertaining to the implementation of difficult language constructs. The book also contains well structured and efficient programs. The book contains a nicely designed reference manual which includes syntax notation, declarations, ANSI changes, scope rules and many others. This book is of great help to people working with ANSI compilers.

2. “Programming in ANSI C” by E Balaguruswamy

Book Review: This book presents basics of C programming language in a very simple manner. Each chapter contains a set of objectives to be learned and at the end of every chapter there is a set of review questions and programming exercises. Different features of the language are nicely discussed and demonstrated through many examples. In order to gain full control over the subject real life applications of C programming language have been presented. Different features of C language integrated thereby leading to the formation of program. Chapters on program design and development, program efficiency, errors and debugging have also been included.

3. “Schaum’s Outline of Programming with C” by Byron Gottfried

Book Review: The book includes explanation of commonly used features of C programming language and also provides a contemporary approach to programming, stressing the importance of clarity, legibility and efficiency in program design. The book is very useful from beginning programmers to practicing professionals. Sets of review questions as well as drill programs are given at the end of the chapter. This will help the readers to test their understanding of the subject. The book also covers most of the latest advancements done in the field of C programming language.

4. “Data Structures” by Seymour Lipschutz

“Data Structures” Book Review: This book includes the discussion on basics of data structures supplemented with solved examples and programming problems. The programming problems helps the students to have an upper hand on the practical understanding of the subject.

5. “Fundamentals of Data Structures in C” by Ellis Horowitz

“Fundamentals of Data Structures in C” Book Review: This book provides a comprehensive and a technical introduction to data structures such as arrays, stacks, queues, linked lists, trees and graphs and techniques such as sorting hashing that form the basis of all software. In addition, this text presents advanced or specialized data structures such as priority queues, efficient binary search trees, multiway search trees and digital search structures.

6. “How to Solve it by Computer” by R G Dromey

Book Review: The book contains various general and mathematical techniques for problem solving. The other topics covered in the book are computer problem solving basics, recursive algorithms, factoring methods, array techniques, merging, sorting, searching, dynamic data structures and algorithms. The data is presented in such a way that reader can easily grasp the concepts in short time. The book contains various number of problems and questions which are tailored according to the needs of the readers.

7. “Data Structures : A Programming Approach with C 2nd Edition” by Dharmender Singh Kushwaha and Arun Kumar Misra

“Data Structures : A Programming Approach with C 2nd Edition” Book Review: This well-organized book discusses the fundamentals of various data structures using C as the programming language. It begins with a discussion on the basics of C and then it moves on to describe Pointers, Arrays, Linked lists, Stacks, Queues, Trees, Heaps, Graphs, Files, etc. The book explains various other concepts such as memory management, dynamic arrays and dynamic strings with suitable examples. It contains over 500 figures to explain various algorithms and concepts.

8. “Applied Data Structures With C++” by Smith

“Applied Data Structures With C++” Book Review: Applied data structures with C++ covers all of the fundamental structures and data types and features implementations presented in C++. The book presents a comprehensive overview of main memory and file-based structures, with an emphasis on files and persistent structures. additional coverage of Object-Oriented design, persistence, recursion, and databases as Large-Scale file structures supplements the Standard approach to fundamental topics.


9. Computers Programming and Data Structure

1. “Data Structures Using C” by Reema Thareja

“Data Structures Using C” Book Review: The book gives an introduction to C programming. Then the book covers topics like arrays, strings, linked lists, stacks and queues, trees, heaps and graphs. The book also provides a lot of exercises at the end of the chapters, solved examples and problems and MCQ’s. This book is intended for undergraduate students in computer science and related branches having a course in Data Structures and Algorithms, anyone trying to learn DS Algo and also the working professionals.

2. “Data Structures and Algorithms for GATE: Solutions to All Previous GATE Questions Since 1991” by Narasimha Karumanchi

“Data Structures and Algorithms for GATE: Solutions to All Previous GATE Questions Since 1991” Book Review: The book covers data structures topics like linked lists, stacks, queues, trees, recursions, and backtracking. The algorithmic topics covered are searching, sorting, graph algorithms, string algorithms, hashing techniques, and symbol tables, DP, divide and conquer algorithms and greedy algorithms. This book contains a compilation of GATE questions from 1991 till 2010. This book can be used by undergraduate students in computer science and related branches having a course in Data Structures and Algorithms and those preparing for GATE examinations.

3. “Data Structures Using C” by Balagurusamy

“Data Structures Using C” Book Review: The book covers data structures and algorithms in C and covers topics like arrays, strings, linked lists, stacks and queues, trees, heaps and graphs. The book also provides a lot of exercises at the end of the chapters, solved examples and problems. This book is intended for undergraduate students in computer science and related branches having a course in Data Structures and Algorithms, anyone trying to learn DS Algo and also the working professionals.


10. Data and File Structures

1. “MCS-021 Data And File Structures” by Dinesh Verma and Vijay Singhal

“MCS-021 Data And File Structures” Book Review: This book consists of five chapters on data and file structures-Analysis Of Algorithm, Data Structure Advanced Data Structure, Searching & Sorting and File Organization. The chapters are in the form of notes that will help the students prepare for competition exams. Apart from that it includes solved and unsolved multiple choice questions from previous years examinations. This help book will be useful for first and second year undergraduate students.

2. “Computer Science With C++ Concepts File Handling Data Structures – Vol. I and II” by Sumita Arora

“Computer Science With C++ Concepts File Handling Data Structures – Vol. I and II” Book Review: This book is a detailed and complete guide to C++ concepts. It contains the base lessons of C++ that anyone can use to learn this computer language. Detailed information related to Data Structure and File Handling is also included in the book. It contains schematic data representation to make it easy for students to learn concepts easily. Apart from that, the book contains pictorial representations of different buses and circuits. This book is useful for students and teachers of computer science programs.

3. “Data and File Structures” by Zakiya Malek

“Data and File Structures” Book Review: This book discusses the various types of data structures through C language. Each chapter presents step by step development of algorithms and implementation of data structures. Types of data structures such as array, linked list, stack, queue, tree and graph are discussed with graphical approach. Sorting and searching methods are covered comprehensively. The book also deals with advanced tree and hashing. In addition, file organizations are also discussed. It also includes solved and unsolved problems to illustrate the concepts and to make the students understand the concepts in a better way. The book is useful for undergraduate, postgraduate and diploma level students of computer applications, computer science and computer engineering.

4. “Data and File Structure (GTU)” by Rohit Khurana

“Data and File Structure (GTU)” Book Review: This book describes data and file structure using C. It begins with an introduction to data structures, including data management concepts. The book then moves on to present linear data structures such as arrays, stacks, structures, queues, linked lists and their applications. It then describes the non-linear data structures―trees and graphs and their applications. Finally, the text discusses hashing and file structures, including collision–resolution techniques and file organization. The book is designed for undergraduate students of computer engineering at Gujarat Technological University (Gtu).

5. “Data Management and File Structures” by Loomis

“Data Management and File Structures” Book Review: This book focuses on the theoretical concepts and practical applications of data management and file structures. It discusses the principles of data management and file processing in a comprehensive manner. The readers will understand the complex and fast evolving technology of information handling. The book also makes the reader familiarized with the mathematics of data management and file structures. This book is useful for undergraduate, postgraduate and diploma level students of computer applications, computer science and computer engineering.

6. “Data Structures And Files” by S K Gondhalekar and V J Dharkar

“Data Structures And Files” Book Review: This book is a comprehensive study of data structures and files. The book has been divided into six chapters. Chapter 1 deals with the preliminaries that are required to appreciate the need for studying data structures. Chapter 2 presents the linear class of data structures. Chapter 3 deals with the important nonlinear structures. Advanced data structures such as balanced search trees, heaps etc. have been explained in detail in Chapter 4. Algorithms are provided for each operation to be performed on these data structures to impart a practice-oriented knowledge to the students. The book is useful for data scientists, undergraduate and graduate students of computer engineering and computer science.

7. “Data Structure and Files” by Rajesh Shukla

“Data Structure and Files” Book Review: This book teaches the readers to develop programming and algorithm analysis skills so that they are able to design programs with maximum efficiency. C language has been used in the book to permit the execution of basic data structures in a variety of ways. The book includes various application based programming examples for clarity of the concepts. Summary and exercises at the end of each chapter are also included for the students to test their understanding of the subject matter. In addition, the book includes university question papers with answers to prepare the students for the exams. This book is useful for students and teachers of computer science programs.

8. “Data and File Structures Using C” by Reema Thareja

“Data and File Structures Using C” Book Review: This book discusses the various types of data structures through C language. Each chapter presents step by step development of algorithms and implementation of data structures. Types of data structures such as array, linked list, stack, queue, tree and graph are discussed with graphical approach. Sorting and searching methods are covered comprehensively. The book also deals with advanced tree and hashing. In addition, file organizations are also discussed. It also includes solved and unsolved problems to illustrate the concepts and to make the students understand the concepts in a better way. The book is useful for data analysts as well as students and teachers of computer engineering.

9. “The Design and Implementation of a Log-structured file system (The Springer International Series in Engineering and Computer Science)” by Mendel Rosenblum

“The Design and Implementation of a Log-structured file system (The Springer International Series in Engineering and Computer Science)” Book Review: This book focuses on the technological changes and how these influence the computer systems research. It discusses how technology changes alter the characteristics of the underlying hardware components of the system and new techniques need to be developed to avoid such a situation. Various challenges such as the unbalanced scaling of hardware component technologies are also addressed. At the end ways to overcome these challenges are discussed. The book is useful for students and teachers of computer science as well as data scientists and developers.

10. “Files and Data Structures with Cobol” by James R Mensching

“Files and Data Structures with Cobol” Book Review: This book focuses on developing files and data structures using Cobol programming. It starts with simple examples and then gets into the details of programming. The book provides a blend of theoretical and practical learning to the readers. Advanced data structures such as balanced search trees, heaps etc. are also explained in detail. Algorithms are provided for each operation to be performed on these data structures to impart a practice-oriented knowledge to the students. The book is useful for data scientists, undergraduate and graduate students of computer engineering and computer science.

People who are searching for Free downloads of books and free pdf copies of these books on Data Structure and Algorithms – we would like to mention that we don’t have free downloadable pdf copies of these good books and one should look for free pdf copies from these Authors only if they have explicitly made it free to download and read them.

We have created a collection of best reference books on “Data Structure and Algorithms” so that one can readily see the list of top books on “Data Structure and Algorithms” and buy the books either online or offline.

If any more book needs to be added to the list of best books on Data Structure and Algorithms subject, please let us know.

advertisement
advertisement
Subscribe to our Newsletters (Subject-wise). Participate in the Sanfoundry Certification contest to get free Certificate of Merit. Join our social networks below and stay updated with latest contests, videos, internships and jobs!

Youtube | Telegram | LinkedIn | Instagram | Facebook | Twitter | Pinterest
Manish Bhojasia - Founder & CTO at Sanfoundry
Manish Bhojasia, a technology veteran with 20+ years @ Cisco & Wipro, is Founder and CTO at Sanfoundry. He lives in Bangalore, and focuses on development of Linux Kernel, SAN Technologies, Advanced C, Data Structures & Alogrithms. Stay connected with him at LinkedIn.

Subscribe to his free Masterclasses at Youtube & technical discussions at Telegram SanfoundryClasses.