Back to Comp 160's main page

COMP 160: Introduction to Algorithms



Important

Because of COVID-19, Tufts has decided to cancel all presential classes and continue the course online. We are in the process of updating the information below. Make sure to check Piazza for up to date information of the process. See this link for more information.

Office hours

Office hours will be held via Zoom. Schedule is as follows (all times are GMT -4, standard Boston time): UPDATE: due to safety issues, link for the Zoom meetings is available only on Piazza. If you are not a student and would like to have a conversation with one of the instructors, please reach out to us via e-mail. Office hours will start on Thursday January 16th and end on April 27th (both inclusive).

Daily Schedule

The following calendar contains a day-to-day list of the contents of each day, as well as exam/homework dates and similar information.


Detailed Syllabus

See the table below for additional information and study material associated for each lecture. Each topic lists the associated chapter (of the CLRS. book, 3rd edition). Additional study material is provided in a Box folder. See Piazza for a link and more information.
Name Topic Notes
1-1 Introduction, Big O CLRS 3.1 (also skim 3.2 for later reference)
1-2 Big O cont., Mergesort, Recurrences CLRS 2.1-2.3, 4.3, 4.4
1-3 Master Method. Heapsort CLRS 4.5 (4.6 optional, pp.97-99 help build intuition) and 6.3-6.5
1-4 Median Finding (Selection) CLRS 9.3
1-5 CountingSort and RadixSort CLRS 8.2, 8.3
1-6 Sorting lower bound CLRS 8.1
1-7 IRV CLRS 5.1, 5.2
1-8 Quicksort CLRS 7.1-7.2, 7.4
1-9 Randomized selection and Quicksort CLRS 5.3, 7.3, 9.2
2-1 Hashing CLRS 11.1-11.5
2-2 Binary Search Trees CLRS 12.1-12.4
2-3 AVL trees, Augmented trees CLRS problem 13-3, 14.1, 14.2
2-4 Augmented trees, part 2 CLRS 14.3
2-5 Dynamic Programming 1 CLRS 15.3, 15.4
2-6 Dynamic Programming 2 CLRS 15.1
2-7 Amortization CLRS 17.1-17.3
3-1 Introduction to Graphs. Breadth/Depth First Search CLRS 22.1-3
3-2 Bellman-Ford CLRS 24.1
3-3 Dijkstra CLRS 24.3
3-4 Cut vertices CLRS Problem 22.2
3-5 MST: Prim CLRS 23.1
3-6 MST: Kruskal (OPTIONAL) CLRS 23.2
3-7 Approximation CLRS 35.2
S Summary Lecture
F1 Final exam (I+) For students enrolled in the 15:00-16:15 section
F2 Final exam (K+) For students enrolled in the 16:30-17:45 section

Attending an alternate time

We try to synchronize lectures and recitation. As long as there is capacity, you are free to attend the lecture/recitation session that best suits your schedule. Reach out to the instructors if you want to swap the exam times (for partial and/or final).