Prerona Chatterjee

                    Contact Teaching Talks Research Home

Introduction to Theoretical Computer Science

  • Introductory course for new graduate students.
  • Class Timings: Mondays and Wednesdays from 14:30 to 16:00.
  • Location: Room M2 at NISER Bhubaneswar

 

References

 

Grading

  • Weekly Revision Problems (take-home, due in ~3 days from release) - 20%
  • Mid-sem (in-class) - 30%
  • Seminar (in-class) - 10%
  • End-sem (in-class) - 40%

 

Problem Sets

 

Lecture Summary

Week 1: Mathematical Background

  • Lecture 1 (Aug 04, 2025): Sets, functions and graphs.
  • Lecture 2 (Aug 06, 2024): Basics of Logic, Logical Operations.

Week 2: Basics of Algorithms

  • Lecture 3 (Aug 11, 2025): Linear Search, Insertion Sort, Bubble Sort, Analysing Algorithms.
  • Lecture 4 (Aug 13, 2024): Binary Search, Order Statistics.

Week 3: Divide-and-Conquer

  • Lecture 5 (Aug 18, 2025): Merge Sort, Lower Bound on Comparison Sorts.
  • Lecture 6 (Aug 20, 2025): Maximum Subarray Problem, Matrix Multiplication.

Week 4: Greedy Algorithms

  • Lecture 7 (Aug 27, 2025): Queues, Heaps, Priority Queues.
  • Lecture 8 (Aug 29, 2025): Huffman Coding, Activity Selection Problem.

Week 5: Greedy Algorithms and Amortised Analysis

  • Lecture 9 (Sep 1, 2025): Matroids and Greedy Algorithms.
  • Lecture 10 (Sep 3, 2025): Stacks, Amortised Analysis.

Week 6: Graphs and Graph Algorithms

  • Lecture 11 (Sep 8, 2025): Induced Subgraphs, Cliques, Independent Sets, Graph Isomorphism, Complement Graphs.
  • Lecture 12 (Sep 10, 2025): Graph Representations, BFS, Shortest Paths.

Week 7: Graphs and Graph Algorithms

  • Lecture 13 (Sep 15, 2025): Trees and Forests, Minimum Spanning Trees, Kruskal's Algorithm.
  • Lecture 14 (Sep 17, 2025): Bipartite Graphs, Matchings, Hall's Theorem.

Week 8: Dynamic Programming

  • Lecture 15 (Oct 06, 2025): .
  • Lecture 16 (Oct 08, 2025): .

Weeks 9 and 10: Student Talks

  • Lecture 17 (Oct 10, 2025): Single Source Shortest Path, the Bellman-Ford algorithm, Dijkstra's algorithm.
  • Lecture 18 (Oct 13, 2025): Flow Networks, the Ford-Fulkerson Method.
  • Lecture 19 (Oct 15, 2025): DFS, Finding Strongly Connected Components.
  • Lecture 20 (Oct 17, 2025): Graph Coloring and its Applications.

Week 11: The classes P and NP

  • Lecture 21 (Oct 27, 2025): .
  • Lecture 22 (Oct 29, 2025): .