Data Structure & Algorithm





Courses with significant overlap with this course:

Semester of last offering:

Date of approval: dd-mmm-yyyy


Course Contents

Order Analysis: Objectives of time analysis of algorithms; Bigoh and Theta notations, Data Structures: Arrays, Linked lists, Stacks (example: expression evaluation), Binary search trees, Red Black trees, Hash tables, Sorting and Divide and Conquer Strategy: Merge sort; DandC with Matrix Multiplication as another example, Quick sort with average case analysis, Heaps and heap sort, Lower bound on comparison based sorting and Counting sort, Radix sort, Btrees, Dynamic Programming: methodology and examples (Fibonacci numbers, matrix sequence, multiplication, longest common subsequence, convex polygon triangulation), Greedy Method: Methodology, examples (lecture scheduling, process scheduling) and comparison with DP (more examples to come later in graph algorithms), Graph Algorithms: Basics of graphs and their representations, BFS, DFS, Topological sorting, Minimum spanning trees (Kruskal and Prims algorithms and brief discussions of disjoint set and Fibonacci heap data structures), Shortest Paths (Dijkstra, Bellman Ford, Floyd Warshall). 


Number of sections:

Tutors for each section:

Schedule for Lectures:

Schedule for Tutorial:

Schedule for Labs:



Birds at IIT Kanpur
Information for School Children
IITK Radio
Counseling Service