Home Teaching Projects Publications Students Contact IITP
2026: Design and Analysis of Algorithms

CS5101: Design and Analysis of Algorithms (Autumn 2026)

This course will provide a basic understanding of problem solving strategies using computers. The course will focus mostly on the theoretical side.


Class schedule

Monday — 1200-1300 (LT101);    Monday — 1400-1500 (LT101);    Tuesday — 1200-1300 (LT101);    Thursday — 1400-1500 (R303);


Instructor & TAs

Instructor TAs
  • Sanjib Chowdhury
  • Aditya Singh
  • Madiha Tariq
  • Aditi Jha
  • Anil Kumar
  • Shashi Suman
  • Shreya Singhal
  • Avni Verma

Syllabus

This is a 3-1-0-4 (L-T-P-C) course.

Data structures: linked list, stack, queue, tree, balanced tree, graph; Complexity analysis: Big O, omega, theta notation, solving recurrence relation, master theorem
Sorting and searching: Quick sort, merge sort, heap sort; Sorting in linear time; Ordered statistics;
Problem solving strategies: recursion, dynamic programming, branch and bound, backtracking, greedy, divide conquer,
Graph algorithms: BFS, DFS, Shortest path, MST, Network flow;
NP-completeness Advanced topics: string matching, FFT-DFT, basics of approximation and randomized algorithms;


Books

  • Thomas H Cormen, Charles E Lieserson, Ronald L Rivest and Clifford Stein, Introduction to Algorithms, Third Edition, MIT Press/McGraw-Hill
  • Sanjoy Dasgupta, Christos H. Papadimitriou and Umesh V. Vazirani, Algorithms, Tata McGraw-Hill, 2008.
  • Steven Skiena, The Algorithm Design Manual, Springer
  • Jon Kleinberg and Éva Tardos, Algorithm Design, Pearson, 2005.
  • Robert Sedgewick and Kevin Wayne, Algorithms, fourth edition, Addison Wesley, 2011.
  • Udi Manber, Algorithms – A Creative Approach, Addison-Wesley, Reading, MA, 1989.
  • Jeff Erickson, Algorithms, link
  • Tim Roughgarden, Algorithms Illuminated


Slides

Topic Slides
Introduction pdf
Recursion pdf
Sorting pdf
K-th Largest pdf



Last modified: 2026/08/18 05:58:00.