Schedule

March
MondayTuesdayWednesdayThursdayFriday
29
8:30-9:20 Patrick OH
10:30-12:00 Aashna OH
12:30-13:20 Lecture
L01: Intro; Lists, Stacks, and Queues
Weiss 3.1-3.7
Slides
30
8:30-9:20 Patrick OH
10:00-12:00 Nachiket OH
13:00-15:00 Frederick OH
16:30-17:20 Hannah OH
20:00-21:00 Winston OH
31
8:30-9:20 Patrick OH
10:30-11:20 Hamsa OH
11:30-12:20 Khushi OH
12:30-13:20 Lecture
L02: Set and Dictionary ADTs; Tries
Weiss 2.1-2.4
Slides, Supplemental video recording (sorry for the screwed up recording!)
13:30-14:30 Kris OH
01
Section
Worklists & Tries
Handout, Solutions, Holiday video
12:30-13:20 Khushi OH
15:30-16:20 Logan OH
02
8:30-10:20 Patrick OH
12:30-13:20 Lecture
L03: Algorithm Analysis I: Asymptotics
Weiss 2.1-2.4; (optional math review: Weiss 1.1-1.6)
Slides
13:30-14:20 Richard+Hannah OH

April
MondayTuesdayWednesdayThursdayFriday
05
8:30-9:20 Patrick OH
10:30-12:00 Aashna OH
12:30-13:20 Lecture
L04: Algorithm Analysis I: Asymptotics (cont.); Algorithm Analysis II: Amortization
Weiss 11.0 (introduction)
Slides
06
8:30-9:20 Patrick OH
10:00-12:00 Nachiket OH
13:00-15:00 Frederick OH
20:00-21:00 Winston OH
07
8:30-9:20 Patrick OH
10:30-11:20 Hamsa OH
11:30-12:20 Khushi OH
12:30-13:20 Lecture
L05: Algorithm Analysis III: Recurrences
Weiss 2.1-2.4
Slides
13:30-14:30 Kris OH
08
Section
Asymptotics
Handout, Solutions
12:30-13:20 Khushi OH
15:30-16:20 Logan OH
23:59 P1 Checkpoint due
09
8:30-10:20 Patrick OH
12:30-13:20 Lecture
L06: Priority Queue ADT; Heaps
Weiss 6.1-6.5
Slides
13:30-14:20 Richard+Hannah OH
12
8:30-9:20 Patrick OH
10:30-12:00 Aashna OH
12:30-13:20 Lecture
L07: Heaps (cont.)
Weiss 6.1-6.5 (heaps); Weiss 4.1-4.3 (BSTs)
Slides
13
8:30-9:20 Patrick OH
10:00-12:00 Nachiket OH
13:00-15:00 Frederick OH
16:30-17:20 Hannah OH
20:00-21:00 Winston OH
14
8:30-9:20 Patrick OH
10:30-11:20 Hamsa OH
11:30-12:20 Khushi OH
12:30-13:20 Lecture
L08: Dictionary ADT: BST
Weiss 4.4
Slides
13:30-14:30 Kris OH
15
Section
Heaps & Recurrences
Handout, Solutions
11:00 Quiz 1 due
12:30-13:20 Khushi OH
15:30-16:20 Logan OH
16
8:30-10:20 Patrick OH
12:30-13:20 Lecture
L09: AVL trees
Weiss 4.4
Slides
13:30-14:20 Richard+Hannah OH
23:59 P1 due
19
8:30-9:20 Patrick OH
10:30-12:00 Aashna OH
12:30-13:20 Lecture
L10: Dictionary ADT: B+-Trees
Weiss 4.7
Slides, Supplemental video recording (sorry for the screwed up recording!)
20
8:30-9:20 Patrick OH
10:00-12:00 Nachiket OH
13:00-15:00 Frederick OH
16:30-17:20 Hannah OH
20:00-21:00 Winston OH
21
8:30-9:20 Patrick OH
10:30-11:20 Hamsa OH
11:30-12:20 Khushi OH
12:30-13:20 Lecture
L11: B+-Trees (cont.)
Weiss 4.7
Slides
13:30-14:30 Kris OH
22
Section
AVL Trees and B-Trees
Handout, Solutions
12:30-13:20 Khushi OH
15:30-16:20 Logan OH
23:59 P2 Checkpoint 1 due
23
8:30-10:20 Patrick OH
12:30-13:20 Lecture
L12: ; Hashing; Dictionary ADT: Hash Tables
Weiss 5.1-5.5
Slides
13:30-14:20 Richard+Hannah OH
26
8:30-9:20 Patrick OH
10:30-12:00 Aashna OH
12:30-13:20 Lecture
L13: Hash Tables (cont.); Iterative Comparison Sorts
Weiss 5.1-5.5 (hashing); Weiss 7.1-7.3, 7.5-7.7 (sorting)
Slides
27
8:30-9:20 Patrick OH
10:00-12:00 Nachiket OH
13:00-15:00 Frederick OH
16:30-17:20 Hannah OH
20:00-21:00 Winston OH
28
8:30-9:20 Patrick OH
10:30-11:20 Hamsa OH
11:30-12:20 Khushi OH
12:30-13:20 Lecture
L14: Comparison Sorts
Weiss 7.1-7.3, 7.5-7.7
Slides, Worksheet
13:30-14:30 Kris OH
29
11:00 Quiz 2 due
12:30-13:20 Khushi OH
15:30-16:20 Logan OH
30
8:30-10:20 Patrick OH
12:30-13:20 Lecture
L15: QuickSort
Weiss 7.8, 7.11
Slides
13:30-14:20 Richard+Hannah OH

May
MondayTuesdayWednesdayThursdayFriday
03
8:30-9:20 Patrick OH
10:30-12:00 Aashna OH
12:30-13:20 Lecture
L16: Beyond Comparison Sorts; Parallelism I: Introduction to Multithreading
Grossman 2, 3.1-3.4
Slides
04
8:30-9:20 Patrick OH
10:00-12:00 Nachiket OH
13:00-15:00 Frederick OH
16:30-17:20 Hannah OH
20:00-21:00 Winston OH
05
8:30-9:20 Patrick OH
10:30-11:20 Hamsa OH
11:30-12:20 Khushi OH
12:30-13:20 Lecture
L17: Parallelism I: Introduction to Multithreading; Parallelism II: ForkJoin
Grossman 3.5-4.3
Slides
13:30-14:30 Kris OH
06
Section
Parallel Coding
Starter Code, Handout, Solutions
12:30-13:20 Khushi OH
15:30-16:20 Logan OH
23:59 P2 Checkpoint 2 due
07
8:30-10:20 Patrick OH
12:30-13:20 Lecture
L18: Parallelism II: ForkJoin
Grossman 5.1
Slides
13:30-14:20 Richard+Hannah OH
10
8:30-9:20 Patrick OH
10:30-12:00 Aashna OH
12:30-13:20 Lecture
L19: Parallelism III: Parallel Prefix
Grossman 5.2-5.4
Slides
11
8:30-9:20 Patrick OH
10:00-12:00 Nachiket OH
13:00-15:00 Frederick OH
16:30-17:20 Hannah OH
20:00-21:00 Winston OH
12
8:30-9:20 Patrick OH
10:30-11:20 Hamsa OH
11:30-12:20 Khushi OH
12:30-13:20 Lecture
L20: Parallelism IV: Parallel Pack and Sort
Grossman 6
Slides
13:30-14:30 Kris OH
13
Section
Parallel Prefix
Handout, Solutions Span Solution
12:30-13:20 Khushi OH
15:30-16:20 Logan OH
23:59 P2 due
14
8:30-10:20 Patrick OH
12:30-13:20 Lecture
L21: Synchronization I: Concurrency and Mutual Exclusion
Grossman 7
Slides, Worksheet
13:30-14:20 Richard+Hannah OH
17
8:30-9:20 Patrick OH
10:30-12:00 Aashna OH
12:30-13:20 Lecture
L22: Synchronization II: Race Conditions
Grossman 8, 9
Slides, Worksheet
23:59 PM Parallelism due
18
8:30-9:20 Patrick OH
10:00-12:00 Nachiket OH
13:00-15:00 Frederick OH
16:30-17:20 Hannah OH
20:00-21:00 Winston OH
19
8:30-9:20 Patrick OH
10:30-11:20 Hamsa OH
11:30-12:20 Khushi OH
12:30-13:20 Lecture
L23: Synchronization III: Deadlocks
Slides
13:30-14:30 Kris OH
20
Section
Concurrency
Handout, Solutions
12:30-13:20 Khushi OH
15:30-16:20 Logan OH
16:00 Quiz 3 due
21
8:30-10:20 Patrick OH
12:30-13:20 Lecture
L24: Graphs I: Definitions and Representations; TopoSort; Traversals
Weiss 9.1-2, Pre-lecture Reading
slides, demo
13:30-14:20 Richard+Hannah OH
24
8:30-9:20 Patrick OH
10:30-12:00 Aashna OH
12:30-13:20 Lecture
L25: Graphs II: Single-Source Shortest Paths
Weiss 9.3
Slides, worksheet
23:59 P3 Checkpoint 1 due
25
8:30-9:20 Patrick OH
10:00-12:00 Nachiket OH
13:00-15:00 Frederick OH
16:30-17:20 Hannah OH
20:00-21:00 Winston OH
26
8:30-9:20 Patrick OH
10:30-11:20 Hamsa OH
11:30-12:20 Khushi OH
12:30-13:20 Lecture
L26: Graphs III: Minimum Spanning Trees
Weiss 9.5
Slides, worksheet
13:30-14:30 Kris OH
27
Section
Graphs
Handout, Solutions
12:30-13:20 Khushi OH
15:30-16:20 Logan OH
28
8:30-10:20 Patrick OH
12:30-13:20 Lecture
L27: Kruskal's Algorithm; Disjoint Sets
Weiss 8
Slides, worksheet
13:30-14:20 Richard+Hannah OH
31
Memorial Day
01
8:30-9:20 Patrick OH
10:00-12:00 Nachiket OH
13:00-15:00 Frederick OH
16:30-17:20 Hannah OH
20:00-21:00 Winston OH
23:59 P3 Checkpoint 2 due
02
8:30-9:20 Patrick OH
10:30-11:20 Hamsa OH
11:30-12:20 Khushi OH
12:30-13:20 Lecture
L28: P vs NP
Weiss 9.6.3, 9.7
Slides, worksheet
13:30-14:30 Kris OH
03
Section
TBD
12:30-13:20 Khushi OH
15:30-16:20 Logan OH
04
8:30-10:20 Patrick OH
12:30-13:20 Lecture
L29: NP-Completeness
Weiss 9.6.3, 9.7
Slides, worksheet
13:30-14:20 Richard+Hannah OH

June
MondayTuesdayWednesdayThursdayFriday
07
23:59 P3 due
08 09 10
11:00 Quiz 4 due
11