DS 320: Algorithms for Data Science
Spring 2026
Boston University


Course Details

Instructors: Professors Kira Goldner (first half of semester: 1/20–3/15) and Jeffrey Considine (second half of semester: 3/15–5/18).
Teaching Assistants: Anup De and Theo (Thodoris) Tsilivis.
Email: Please use private messages on Piazza for all email needs.

Office Hours:
Monday 11am–12pm (Prof. Considine, CDS 1645).
Monday 5–7pm (Anup De, CDS 5th Floor Pavilion West Side).
Wednesday 9–11am (Theo Tsilivis, CDS 13th floor yellow corner).
Wednesday 1–2pm and 4–5pm (Prof. Considine, CDS 1645).
Thursday 1–2pm (Prof. Considine, CDS 1645).

Lectures and Discussion Sections:
A1 Tuesday/Thursday 3:30–4:45pm, WED 130.
Discussion Section A2: Friday 10:10-11:00am, COM 217.
Discussion Section A3: Friday 11:15am-12:05pm, KCB 103.

B1 Tuesday/Thursday 11:00am–12:15pm, CAS B20.
Discussion Section B2: Friday 12:20-1:10pm, KCB 106.
Discussion Section B3: Friday 1:25-2:15pm, KCB 103.

Important Links:

Homework: Homeworks will be posted on Piazza when they become available. Homework must be handwritten or typed up using LaTeX; here is a quick resource on LaTeX and here is a LaTeX template you may use for the homework. Here is another short guide to LaTeX. You may find it easier to use Overleaf.


Important Dates (Tentative)

Midterm I: Tues. Feb 10.
Midterm II: Tues. March 3.
Midterm III: Tues. March 24.
Midterm IV: Tues. April 14.
Final: Per course matrix. (A1) Thurs. May 7, 3-5pm in WED 130 and (B1) Tues. May 5, 12-2pm in CAS B20.


Lecture Schedule (Tentative)

The following resources may also be helpful for those who need refreshers on proof concepts:

Below is a table with that will reflect what we cover in each lecture and will point to corresponding reading material. There is no required textbook for this course, as all materials are available online for free and we will switch between materials. Some shorthand for the reading material:
  • KTx = Kleinberg and Tardos chapter x.
  • CLRSx = Cormen, Leiserson, Rivest, and Stein chapter x.
  • Ex = Erickson chapter x.
Resources listed are optional, and often multiple versions of the same material are listed so that you can find what is best suited to you.

Date Topic Resources
Jan 20 Overview and Policies, Runtime and Asymptotics Worksheet, Notes, Slides, KT2.1-2,4, CLRS3.1-2, Logic Guide
Jan 22 Insertion Sort, Induction, and Loop Invariants Worksheet, Notes, Induction Guide, CLRS2.1, 8.1
Jan 27 Abstract Data Types and Graphs Worksheet, Notes, CLRS10.1-2, 22.1, KT3.1, E5.1-4
Jan 29 Depth-First Search Worksheet, Notes, CLRS22.3, KT3.2-3 (skip BFS for now!), E6.1-3
Feb 3 Topological Sort and Breadth-First Search Worksheet, Notes, KT3.2,6 CLRS22.2,4
Feb 5 Greedy Algorithms I: Dijkstra's Algorithm Worksheet, Notes, KT4.4, CLRS24.3
Feb 10 MIDTERM 1
Feb 12 Greedy Algorithms II: Interval Scheduling Worksheet, Notes, Greedy-Stays-Ahead Guide, KT4.1
Feb 17 NO LECTURE (Monday Schedule)
Feb 19 Greedy Algorithms III: Optimal Caching Worksheet, Notes, Greedy-Exchange Guide, KT4.3
Feb 24 NO CLASS (Snow Day)
Feb 26 Greedy Algorithms IV: Scheduling to Minimize Lateness Worksheet, Notes, KT4.2, similar to CLRS16.5
Mar 3 MIDTERM 2
Mar 5 Divide & Conquer I: Mergesort, Solving Recurrences Worksheet, Notes, Divide & Conquer Guide, KT5.1, CLRS4.3-5
Mar 10 NO CLASS (Spring break)
Mar 12 NO CLASS (Spring break)
Mar 17 Divide & Conquer II: Closest Pair of Points KT5.4
Mar 19 Divide & Conquer III: Integer and Matrix Multiplication KT5.5, CLRS4.2, Mitzenmacher's notes
Mar 24 MIDTERM 3
Mar 26 Dynamic Programming I: Weighted Interval Scheduling Dynamic Programming Guide, KT6.1-6.2
Mar 31 Dynamic Programming II: Knapsack KT6.4
Apr 2 Dynamic Programming III: Segmented Least Squares KT6.3
Apr 7 Dynamic Programming IV: Bellman-Ford KT6.8
Apr 9 NP Completeness Complexity Guide, KT8.2-3, KT8/CLRS34 for addtl reading
Apr 14 MIDTERM 4
Apr 16 Linear Programming I: Introduction Linear Programming Guide, KT8.1, KT11.6
Apr 21 Linear Programming II: Algorithms, Problems, and Approximations Blog Post on Simplex
Apr 23 Linear Programming III: Duality Theory and Zero-Sum Games The Minimax Theorem without Duality
Apr 28 Linear Programming IV: Zero-Sum Games and Minimax Theorem The Minimax Theorem without Duality
Apr 30 Online Learning and Multiplicative Weight Update Multiplicative Weights Guide