Tulasimohan Molli
  • Home
  • Teaching
  • Research
  • About

Design and Analysis of Algorithms

CS F364 | May-July 2026

Download Course Handout (PDF)

NoteAbout the Course

This course is an advanced study that follows Data Structures and Algorithms. It is designed to equip students with a deep understanding of major algorithmic design paradigms and the techniques required for their rigorous analysis. The curriculum covers the formal analysis of algorithm correctness, time complexity, and space complexity, as well as computational complexity theory including NP‑completeness.

NoteTarget Audience

Summer Term course meant for people who want to improve their course grade.

NotePrerequisites

Data Structures and Algorithms (CS F213) or equivalent. Working knowledge of programming in C/C++ or Python.

NoteReferences

Textbooks

  1. (T1) Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. Introduction to Algorithms, 3rd Ed., MIT Press (2010).

Reference Books

  1. (R1) Jon Kleinberg, Eva Tardos. Algorithm Design, Pearson (2012).
  2. (R2) E. Horowitz, S. Sahni, S. Rajsekaran. Fundamentals of Computer Algorithms, Universities Press.
  3. (R3) R. Motwani, P. Raghavan. Randomized Algorithms, Cambridge University Press (1995).
  4. (R4) G. Ausiello et al. Complexity and Approximation, Springer.
NoteTimings and Venue

Instructor: Tulasimohan Molli

Lectures: Tuesdays, Thursdays 2:00 PM to 3:50 PM, Fridays 4:00 PM to 5:50 PM
Venue: F-206 (TP-Room)

NoteOffice Hours

Chamber Consultation Hour: 2 PM on Friday.

NoteEvaluation Policy
Component Duration / Format Weight Date & Time
In‑class Evaluation 10‑15 min surprise quizzes 10% Best 10 of 12‑15 quizzes
Assignments (2) Take‑home + viva 20% One before mid, one after
Midterm Exam 90 min (closed book) 30% 20/06/2026
Comprehensive Exam 3 h (closed book) 40% 15/07/2026
  • Assignments & in‑class: no make‑up.
  • Midterm: case‑by‑case with approval.
  • Comprehensive: as per university guidelines.
  • Strict adherence to Academic Honesty required; violations will be penalised.
NoteRegistration & Logistics

All announcements via Google Classroom or email.

  • Lectures
  • Syllabus
  • Assignments
  • Practice Problems
  • Quizzes
  • Exams
# Date Topic Slides
Lecture 1 2026-05-21 Introduction to Algorithms Slides
Lecture 2 2026-05-21 Introduction to Sorting & Asymptotic Analysis Slides
Lecture 3 2026-05-21 Asymptotic Notation & Merge Sort Slides
Lecture 4 2026-05-21 Solving Recurrences Slides
Lecture 5 2026-05-21 Divide and Conquer: Maximum Subarray Slides
Lecture 6 2026-05-21 Closest Pair of Points in 2D Slides
Lecture 7 2026-05-21 Sorting Lower Bounds & Quicksort Slides
Lecture 8 2026-05-21 Probability Primer & Randomized Quicksort Slides
Lecture 9 2026-06-02 Selection: Randomized & Deterministic Slides
Lecture 10 2026-06-02 Dynamic Programming: Fibonacci & LCS Slides
Lecture 11 2026-06-04 Matrix Chain Multiplication Slides
Lecture 12 2026-06-04 Graphs & Dynamic Programming on Trees Slides
Lecture 13 2026-06-05 Greedy: Interval Scheduling Slides
Lecture 14 2026-06-05 Huffman Coding Slides
Lecture 15 2026-06-09 Minimum Spanning Trees Slides
Lecture 16 2026-06-09 MST Algorithms Slides
Lecture 17 2026-06-11 Matroids Slides
Lecture 18 2026-06-11 Matroids: Greedy Optimization Slides
Lecture 19 2026-06-30 Average Case Analysis Slides
Lecture 20 2026-07-02 Amortized Analysis Slides
Lecture 21 2026-07-07 Further Amortized Analysis Slides
Lecture 22 2026-07-07 Network Flow Slides
Lecture 23 2026-07-09 Max-Flow Min-Cut Theorem & Ford-Fulkerson Slides
Lecture 24 2026-07-09 Bipartite Matching via Max-Flow Slides
Lecture 25 2026-07-10 Randomized Algorithms Slides
Lecture 26 2026-07-10 Models of Computation & Reductions Slides
Lecture 27 2026-07-11 NP-Completeness: Reductions in Action Slides
Lecture 28 2026-07-11 Coping with NP-Hardness: LP Relaxation & Rounding Slides
Lecture Learning Objectives Topics Reference
1‑5 Analyze efficiency via growth‑of‑function and asymptotic notations. Asymptotic Analysis, Recurrences T1: Ch 1-3
6‑9 Sorting lower bounds, randomized algorithms. D&C, Quicksort, Selection T1: Ch 4, 7-9
10‑11 Formulate and solve DP problems. Dynamic Programming T1: Ch 15
12‑17 Greedy strategies, matroids, MST. Greedy, Matroids, MST T1: Ch 16, 23
18‑21 Average-case and amortized analysis. Amortized Analysis T1: Ch 17
22‑26 Network flow modelling. Network Flow T1: Ch 26
27‑33 Complexity classes and NP-Completeness. Randomization, P, NP, NP-C T1: Ch 5, 34
34‑37 Hard problem techniques. Backtracking, B&B, Approx. T1: Ch 35, R2, R4
38‑40 Linear Programming. Linear Programming T1: Ch 29
NoteAssignment 1

Problems: Problem A | Problem B | Problem C | Problem D

Due: 30 Jun 2026, 2:00 PM  |  Weight: 10%  |  Submission: Individual  |  Final mark: Score (out of 50) × Viva ÷ 10

NoteAssignment 2

Due: TBA  |  Weight: 10%  |  Submission: Individual

NoteAsymptotic Notation

Big-Oh, Big-Theta, Big-Omega — comparing growth rates. 4 problems.

NoteRecurrence Relations

Substitution method, Master theorem, two-variable recurrences. 5 problems.

NoteDivide & Conquer

Merge sort variants, missing integer, MST, convex polygon, matrix search. 7 problems.

NoteGreedy Algorithms

Interval scheduling, interval stabbing, cookie assignment, knapsack. 5 problems.

NoteDynamic Programming

String interleaving, petrol pump stops, subset sum. 3 problems.


Post-Midsem Topics

NoteMatroids

Independence axioms, matroid properties, greedy on weighted matroids. 4 problems.

NoteAmortized Analysis

Aggregate/potential/accounting methods, binary counter, dynamic table variants. 6 problems.

NoteNetwork Flow & Matching

Ford-Fulkerson, max-flow min-cut, edge-disjoint paths, project selection, flow properties. 5 problems.

NoteRandomized Algorithms

Las Vegas vs Monte Carlo, dot-product lemma, Freivalds. 3 problems.

NoteNP-Completeness & Reductions

P vs NP, 3-SAT to CLIQUE, Vertex Cover, Independent Set reductions. 5 problems.

NoteLP, IP, Relaxations & Rounding

LP/IP formulation, LP relaxation, Vertex Cover rounding, integrality gap. 3 problems.

  • Quiz 01 (Question & Solution)
  • Quiz 02 (Question & Solution)
  • Quiz 03 (Question)  |  Solution Key
  • Quiz 04 (Question)  |  Solution Key
  • Quiz 05 (Question)  |  Solution Key
  • Quiz 06 (Question)  |  Solution Key
  • Midterm Questions: PDF  |  LaTeX Source
  • Midterm Solutions: PDF  |  LaTeX Source

© 2026 Tulasimohan Molli

Powered by Quarto | Credits

  • Lite