Algorithm Design and Analysis / Spring 2020


  • New Lecture is up: Genome Project
  • New Lecture is up: Lecture 30 - Quantum Computing [slides]
  • New Lecture is up: Lecture 29 - Coping with NP-Completeness - TSP Dynamic Programming, Apporximation Algorithms [slides]
  • New Lecture is up: Lecture 28 - Coping with NP-Completeness - Independent Set in Tree + Backtracking + LocalSearch [slides]
  • New Assignment released: [Assignment #11 - Advanced Algorithms - Coping with NP-Completeness]
  • New Lecture is up: Lecture 27 - National Holiday - Eid Fetr
  • New Lecture is up: Lecture 26 - Coping with NP-Completeness - Special Case - 2-SAT [slides]

Course Description

In this course, we aim to introduce students to algorithm thinking with an emphasis on learning through doing. After examining sylabus and course material from top universities including Stanford, Princeton and MIT we have chosen to follow the Data Structure and Algorithms Specialization developed by Alexander S. Kulikov due to excellent course material and its practical approach.

Previous Offerings

Course instructor

Sauleh Eetemadi

Teaching Assistants

Alireza Moradi

Ghazale Mahmoudi

Mahdi Moghadami

Maryam S. Hashemi

Mohammad Javad Mirshekari

Mohammad Javad Pirhadi

Mohammad Mahdi Abdollahpour

Mercedeh Irani

Mahsa Ghaderan

Motahare Mirzaei

Sara Kodeiri