DATA STRUCTURES – COMPLETE NOTES
UNIT – I: Linear Data Structures
Introduction to Data Structures
A data structure is a method of organizing and storing data efficiently. Types include linear and non-linear structures.
Operations include insertion, deletion, searching, sorting, and traversal.
Linked Lists
A linked list is a collection of nodes connected using pointers. Types: Singly Linked List, Circular Linked List, Doubly
Linked List.
Stacks
A stack follows LIFO (Last In First Out). Operations: push, pop, peek. Applications include recursion, expression
evaluation, and backtracking.
Queues
A queue follows FIFO (First In First Out). Operations: enqueue and dequeue. Applications include CPU scheduling
and buffering.
UNIT – II: Trees
Binary Trees
A tree is a hierarchical structure. Binary tree nodes have at most two children. Traversals: inorder, preorder, and
postorder.
Binary Search Trees
BST maintains sorted order. Left subtree contains smaller values and right subtree contains larger values.
AVL Trees
AVL trees are self-balancing BSTs where balance factor is maintained between -1 and 1.
Red-Black Trees
A balanced binary search tree using color properties to ensure logarithmic operations.
UNIT – III: Multiway Trees and Heaps
B Trees and B+ Trees
Used in databases and file systems. They reduce disk accesses and maintain sorted data.
Heaps
A heap is a complete binary tree. Min-heap stores smallest element at root, max-heap stores largest.
Searching Techniques
Interpolation search works on uniformly distributed data. Jump search skips blocks of elements.
UNIT – IV: Graphs and Sorting
Graphs
Graphs consist of vertices and edges. Types include directed and undirected graphs.
Graph Traversals
Breadth First Search (BFS) and Depth First Search (DFS) are important traversal algorithms.
Sorting Techniques
Heap sort uses heaps, Shell sort improves insertion sort, Tree sort uses BST, Radix sort sorts digit by digit.
UNIT – V: Hashing and Files
Hashing
Hashing maps keys to table positions using hash functions for fast searching.
Collision Resolution
Collisions are handled using chaining or open addressing methods.
File Organization
Files can be text or binary. File organization methods include sequential, indexed, and direct access.