Data Structure Tutorial

This section contains the data structure tutorial with the most common and most popular topics like Linked List, Stack, Queue, Tree, Graph etc.

Data structure is logical or mathematical organization of data; it describes how to store the data and access data from memory. Actually in our programming data stored in main memory(RAM) and To develop efficient software or firmware we need to care about memory. To efficiently manage we required data structure.

There are two different types of data structure:

  1. Linear Data Structure: In linear data structure data elements stored in sequential manner. Stack, Queue and Linked List are the types of linear data structure.
  2. Non Linear Data Structure: In Non-Linear data structure data elements are not stored in the sequence manner. Tree and Graph are the type of non-linear data structure.

Topics of Data Structure

List of Data Structure Tutorial topics...


  1. Structured Programming, its Advantages and Disadvantages.
  2. Data Structure types and operations associated with them.
  3. Introduction of Data Structure.
  4. Linear, Binary & Interpolation search.


  1. Array Data Structure
  2. Array coding problems

Linked List

  1. Introduction to Linked List
  2. Single Linked list and its basic operations with traversing implementation
  3. Single linked list insertion
  4. Single linked list deletion
  5. Deleting a node from a linked list without head pointer
  6. Implement union and intersection of two sorted linked lists


  1. Stack
  2. Implement of stack using array
  3. Implementation of Multi Stack in C
  4. Nesting of parentheses using stack
  5. Check for balanced parentheses by using Stacks (C++ program)
  6. Double Stack
  7. Implementation of Stack using two Queues


  1. Linear Queue
  2. Circular Queue
  3. Double Ended Queue (DeQueue)
  4. Priority Queue
  5. Implementation of Queue using two Stacks


  1. Hashing Data Structure
  2. Hash functions and its characteristics
  3. Collisions in Hashing and Collision Resolution Techniques
  4. Hashing | Separate chaining for collision resolution
  5. Hashing | Open addressing for collision handling
  6. Hashing coding problems


  1. Tree Data structure
  2. Introduction to Trees and its terminologies.
  3. Binary tree, Definition and its properties.
  4. Binary Search Tree (BST)
  5. Binary Tree representation (Sequential and Link).
  6. Traversal technique for Binary Tree.
  7. Insertion in Binary Search Tree (BST) | Set 1
  8. Insertion in a Binary Search Tree | Set 2
  9. Deletion in Binary Search Tree (BST) | Set 1
  10. Deletion in Binary Search Tree (BST) | Set 2
  11. Comparison between Hash Table and Binary Search Tree
  12. Construct BST from Given Preorder Traversal
  13. Construct a binary search tree from a sorted linked list
  14. Construct a binary search tree from a sorted 1-D array
  15. Convert given Binary Search Tree to a Greater Sum Tree
  16. Convert given Binary Search Tree to a Smaller Sum Tree
  17. Construct all possible BSTs with keys 1 to N
  18. Convert a Binary Search Tree into a min-heap
  19. Construct BST from level order traversal
  20. Convert an unbalanced BST to a balanced BST
  21. Check if the given array can represent Preorder Traversal of a Binary Search Tree
  22. Kth Minimum in a Binary Search Tree
  23. Kth Maximum in a Binary Search Tree
  24. Check if given sorted subsequence exits in the Binary Search Tree or Not
  25. Check if the Binary Search Tree contains a dead end
  26. Check if the given array can represent inorder traversal of a BST
  27. Check if two BSTs have same set of elements or not
  28. Largest Element in the BST less than or Equal to N
  29. Distance between two nodes in a BST
  30. Count Number of pairs from two different BSTs whose sum is equal to X
  31. Merge Two Binary Search Trees Set 1
  32. Merge two Binary Search Trees set 2 (limited space)
  33. Find the Minimum and Maximum node in a Binary Search Tree
  34. Find Height (Maximum Depth) of a Binary Search Tree (C++ program).
  35. Find the Number of Nodes in a Binary Search Tree (C++ program).
  36. Find the number of leaf nodes in a Binary Tree | Data Structure.
  37. Find whether two trees are structurally identical or not | Data Structure.
  38. AVL Tree, Left and right rotations.
  39. Introduction to B Tree and its operations
  40. Red Black Tree (Properties, Advantages, Inserting Nodes).
  41. Interval Tree in Data Structure.
  42. Threaded Binary Tree | Data Structure.
  43. Level Order Traversal on a Binary Tree | Data Structure.
  44. Segment Trees
  45. Construct a Binary Tree from Postorder and Inorder Traversal


  1. Introduction to Graph in Data Structure
  2. Representation of a Graph in Data Structure
  3. Breath First Search (BFS) of a Graph
  4. Depth First Search (DFS) of a Graph
  5. Cycle Detection in an Undirected Graph
  6. Cycle Detection in a Directed Graph
  7. Prim's Minimum Spanning Tree
  8. Count all the possible path between two vertices
  9. Insertion and deletion of nodes and edges in a graph using adjacency list

Disjoint Set ADT

  1. Disjoint Set ADT


  1. Heap Sort (Introduction, Algorithm and Program using C).


  1. Introduction to Heap Data Structure
  2. Rearrange a string so that no two adjacent characters have the same letter

Competitive Questions

  1. Aggressive Cows (On Binary Search)
  2. Find Maximum Range of Query using Segment Trees


  1. Augmenting Data Structure.
  2. Tail Recursion and Tower of Hanoi using C.
  3. Asymptotic Notations.
  4. Hashing (Hash table, Hash functions and its characteristics).
  5. Hamiltonian Cycle in Data Structure.

Comments and Discussions!

Load comments ↻

Copyright © 2024 All rights reserved.