Best data structures books

Posted on 06-30-2017 by onlinebooksreview


You have already understood the importance of Data Structure in writing efficient codes. And to be a better programmer, you have to master in this area. So, I've reviewed some best books on Data Structure that will surely help you to start your learning today.



Data Structures and Algorithms in Java (2nd Edition)

Data Structures and Algorithms in Java, Second Edition is a comprehensive book for the learners to understand this complicated topic. Algorithms are the procedures that software programs require to manipulate data structures. In this newer edition, the program examples are revised to cope with the latest version of the Java JDK. And more new questions and exercises have added at the end of each chapter, making the book even more useful. Using clear and simple examples, the author provides a small demonstration program executable on a Web browser.The programs explain in graphical form what data structures look like and how they work. In this edition, the program is edited to improve operation and clarify the algorithms.


Supplementary reading

Worked solutions to the programming projects given at the end of each chapter are made available to instructors at recognized educational institutions. This educational supplement are available at www.prenhall.com, in the Instructor Resource Center

 

 

 


Data Structures & Algorithm Analysis in C++

The need for effective programming and algorithm analysis has increased because of the increasing speed and power of computers. Data Structures and Algorithm Analysis in C++ is an excellent book that connects the gap between traditional Algorithms Analysis courses and the new practices. Using the C++ programming language, this book teaches readers to develop well-constructed, maximally efficient programs.

What you will learn:

  • Mathematical fundamentals to understand Data Structure 
  • A brief introduction to the C++ language
  • Various implementations of Lists, Stacks, and Quees 
  •  Different implementations of trees
  • Using of hash tables for fast and effective searches
  • All about sorting and Graph Algorithms
  • Advanced techniques of Data Structures 

Data Structures and Algorithm Analysis in Java (3rd Edition)

This is an advanced book on Algorithms that bridges the gap between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was called CS7. This book is for students who want to acquire good programming and algorithm analysis skills together so that they can develop such programs with the maximum amount of efficiency. Students should have some experience of intermediate programming, including topics as object-oriented programming and recursion, and some familiarity with discrete math.

 

The increase in speed and power of computers has made the need for effective programming and algorithm analysis.  Covering these skills in this book, the author guides readers to develop well-constructed, maximally efficient programs in Java.

 

Weiss clearly describes topics from binary heaps to sorting to NP-completeness and assigns a full chapter to amortized analysis and advanced data structures and their implementation. With simple figures and examples, he provides a careful, rigorous and in-depth analysis of each type of algorithm. A logical arrangement of topics and full access to source code complement the text’s coverage.


 


Data Structures and Algorithms Using C#

This book provides a handy tutorial on how to use data structures and algorithms plus the first comprehensive reference for C#. And the implementation of data structures and algorithms found in the .NET Framework library, as well as those developed by the programmer. The approach in this book is very practical, using timing tests rather than Big O notation to analyze the efficiency of an approach.This is the perfect resource for both C# professionals and students.

What you will  learn;

  • Arrays and Arraylists
  • Basic sorting algorithms
  • Pattern making and text processing 
  • How to build dictionaries with dictionary base class and sorted list class
  • Uses of Hashing and Hashtable class
  • Binary trees and binary search trees
  • Advanced Data Structure like probabilistic algorithms and dynamic programming

Data Structures: A Pseudocode Approach with C++

This new book makes it simple for beginning computer science students to design algorithms first using pseudocode and then build them using the C++ programming language. Based on Data Structures: A Pseudocode Approach with C, this book features a practical approach to data structures.

What you will learn:

  • Basic concepts of C Language and Algorithms
  • Complete guideline on Recursion
  • Linear Lists like Stacks, Queues, and general linear lists
  • Non-linear lists like binary trees, AVL search trees, and multiway trees
  • Sorting and Searching
  • Graphs and Graph Structures

Data Structure and Algorithmic Thinking with Python: Data Structure and Algorithmic Puzzles

 Table of Contents: goo.gl/VLEUca
 Sample Chapter: goo.gl/8AEcYk
 Source Code: goo.gl/L8Xxdt
 Errata: goo.gl/EVftls
 Found issue? goo.gl/forms/uLXGYpyuzX
 Videos: goo.gl/BcHq74

This unique book on Data Structures is devised to provide a jump-start to programmers, job hunters and those who are appearing for exams. All the example codes in this book are written in Python. It includes numerous programming puzzles that not only boost analytical thinking but also prepare readers for interviews. With a focused and practical approach, this book can help readers quickly pick up the concepts and techniques for developing efficient and effective solutions to problems.

What you will learn:
  • Recursion and Backtracking
  • Linked Lists, Stacks, and Queues
  • Trees
  • Priority Queue and Heaps
  • Disjoint Sets ADT
  • Graph Algorithms 
  • Selection Algorithms [Medians]   
  •  Hashing and Symbol Tables   
  • String Algorithms   
  • Algorithms Design Techniques   
  • Greedy Algorithms   
  • Divide and Conquer Algorithms   
  • Dynamic Programming   
  • Complexity Classes