Data Structures
Subject Overview
Data Structures covers linear structures (stacks, queues, linked lists) and their applications in expression evaluation, non-linear structures (trees, heaps) with traversal algorithms, searching/hashing/sorting techniques, and graph representation, traversal and shortest-path algorithms including Kruskal's and Dijkstra's. A 4-credit core theory paper.
Unit-wise Syllabus
4 units — click WhatsApp below to get the full notes for each
Unit 1: Stacks, queues and lists
Contiguous implementation of stacks, polish notations (infix/prefix/postfix conversion and evaluation), linear and circular queue implementation, linked implementation of stacks and queues, singly/doubly/circular linked lists and their operations
Unit 2: Trees
Tree definitions (height, depth, order, degree, parent-child relationships), binary trees and theorems, complete and almost-complete binary trees, tree traversals (preorder, inorder, postorder) and recursive/non-recursive implementations, expression trees, threaded binary trees, forests, heap definition
Unit 3: Searching, hashing and sorting
Sequential/binary/indexed sequential/interpolation search, hashing basics, collision resolution and chaining, internal sorting — bubble, selection, insertion, quick, merge (linked and contiguous), shell, heap and tree sort
Unit 4: Graphs
Graph representations (adjacency matrix, adjacency list, adjacency multilist), depth-first and breadth-first traversal, minimum spanning tree, shortest path algorithms — Kruskal's and Dijkstra's
