# Calendar

(subject to change)

Jump to this week

## Week 1

## Week 1

Topics/Goals:

Lecture:

Assessment:

### Tues

February 12

Topics/Goals:

Introductions/Divide and Conquer Intro
- Familiarize yourself with course basics
- Be able to describe learning
- Understand motivation for group and tech policies
- Recall recurrence relations and inductive proofs

Assessments:

- Post a question or comment about syllabus on Canvas Discussions by 9pm
- PSet 1 assigned (due Feb 17)

### Thurs

February 14

Topics/Goals:

Dynamic Programming (MWIS)/Greedy (Scheduling)
- Describe MWIS and Scheduling Problems
- Design a recurrence relation for a dynamic programming problem
- Understand process of designing and testing a greedy algorithm

Assessments:

- Rough Draft of PSet 1 due to Canvas @ 9pm

### Fri

February 15

No class: Spring Carnival

## Week 2

## Week 2

Topics/Goals:

Lecture:

Assessment:

### Mon

February 18

Topics/Goals:

Lecture:

Assessments:

- Pset 1 Self-grade and reflection due @ 7pm

### Tues

February 19

Topics/Goals:

D&C (Closest Points) / Greedy (Scheduling)
- Describe Closest Points D&C strategy
- Apply greedy design strategy

Assessments:

- Quiz 0 (on syllabus) in class
- Programming Assignment 1 Assigned (due March 22)

### Fri

February 22

Topics/Goals:

Lecture:

Assessments:

- Rough Draft of PSet 2 due to Canvas @ 9pm

## Week 3

## Week 3

Topics/Goals:

Lecture:

Assessment:

### Mon

February 25

Topics/Goals:

Lecture:

Assessments:

- PSet 2 Self-grade and reflection due @ 7pm

### Thurs

February 28

Topics/Goals:

Greedy Scheduling / Loop Invariants
- Prove correctness of greedy scheduling
- Prove correctness of loops using loop invariant

Lecture:

Assessments:

- Quiz 2 completed on Canvas by 6pm on Friday

### Fri

March 1

Topics/Goals:

Lecture:

Assessments:

- Rough Draft of PSet 3 due to Canvas @ 9pm

### Sun

March 3

Topics/Goals:

Lecture:

Assessments:

- PSet 3 due to Canvas @ 9pm

## Week 4

## Week 4

Topics/Goals:

Lecture:

Assessment:

### Mon

March 4

Topics/Goals:

Lecture:

Assessments:

- PSet 3 Self-grade and reflection due @ 7pm
- PSet 4 assigned

### Tues

March 5

Topics/Goals:

D&C (QuickSort) / Loop Invariants
- Create and analyze loop invariants
- Describe and analyze pivot's role in QuickSort

Lecture:

Assessments:

### Fri

March 8

Topics/Goals:

Lecture:

Assessments:

- Rough Draft of PSet 4 due to Canvas @ 9pm
- Quiz 3 on Canvas due @ 6pm

### Sun

March 10

Topics/Goals:

Lecture:

Assessments:

- PSet 4 due to Canvas @ 9pm
- Post review preferences to Canvas Discussion by 10pm

## Week 5

## Week 5

Topics/Goals:

Lecture:

Assessment:

### Mon

March 11

Topics/Goals:

Lecture:

Assessments:

- PSet 4 Self-grade and reflection due @ 7pm

### Tues

March 12

Topics/Goals:

Review for Midterm 1
Lecture:

Assessments:

### Thurs

March 14

Topics/Goals:

NO CLASS
Lecture:

Assessments:

- Midterm 1 (self-scheduled): Available for Pick-up @ noon on Wednesday 3/13

### Fri

March 15

Topics/Goals:

Lecture:

Assessments:

- Midterm 1 (self-scheduled): Last submissions @ 6 PM

### Sun

March 17

Topics/Goals:

Lecture:

Assessments:

## Week 6

## Week 6

Topics/Goals:

Lecture:

Assessment:

### Tues

March 19

Topics/Goals:

Randomized QuickSort
- Describe impact of pivot choice on runtime of QuickSort
- Evaluate expectation values of random variables

Assessments:

- Programming Assignment 2 Assigned (due Tuesday April 30)

### Fri

March 22

Topics/Goals:

Lecture:

Assessments:

- Rough Draft of PSet 6 due to Canvas @ 9pm
- Programming Assignment 1 due @ 5pm

## Spring Break

## Spring Break

## Week 7

## Week 7

Topics/Goals:

Lecture:

Assessment:

### Thurs

April 4

Topics/Goals:

Dynamic Programming Correctness/Huffman Coding
- Create good loop invariants
- Use loop invariants to prove DP correctness
- Describe encoding problems

Lecture:

Assessments:

- Quiz 6 on Canvas due by 6pm on Friday

### Fri

April 5

Topics/Goals:

Lecture:

Assessments:

- Rough Draft of PSet 7 due to Canvas @ 9pm
- Quiz 6 on Canvas due by 6pm on Friday

### Sun

April 7

Topics/Goals:

Lecture:

Assessments:

- PSet 7 due to Canvas @ 9pm

## Week 8

## Week 8

Topics/Goals:

Lecture:

Assessment:

### Mon

April 8

Topics/Goals:

Lecture:

Assessments:

- PSet 7 Self-grade and reflection due @ 7pm
- PSet 8 assigned

### Fri

April 12

Spring Symposium, No Class, No Rough Draft Due This Week

### Sun

April 14

Topics/Goals:

Lecture:

Assessments:

- PSet 8 due to Canvas @ 9pm

## Week 9

## Week 9

Topics/Goals:

Lecture:

Assessment:

### Mon

April 15

Topics/Goals:

Lecture:

Assessments:

- PSet 8 Self-grade and reflection due @ 7pm
- PSet 9 assigned

### Tues

April 16

Topics/Goals:

Huffman's Algorithm
- Describe why Huffman's algorithm is correct
- Analyze runtime of Huffman's algorithm
- Describe the relationship between the algorithm and data structure

Assessments:

### Fri

April 19

Topics/Goals:

Lecture:

Assessments:

- Midterm 2 (self-scheduled): Submitted by 6 PM

### Sun

April 21

Topics/Goals:

Lecture:

Assessments:

- PSet 9 due to Canvas @ 9pm

## Week 10

## Week 10

Topics/Goals:

Lecture:

Assessment:

### Mon

April 22

Topics/Goals:

Lecture:

Assessments:

- PSet 9 Self-grade and reflection due @ 7pm
- PSet 10 assigned

### Thurs

April 25

Topics/Goals:

Shortest Path Algorithms (Dijkstra/Bellman-Ford)
- Analyze runtime of Dijkstra
- Prove correctness of Dijkstra
- Determine appropriate subproblems for Bellman-Ford

Lecture:

Assessments:

- Quiz 9 (There is no Quiz 8) due to Canvas at 6pm on Friday

### Fri

April 26

Topics/Goals:

Lecture:

Assessments:

- Rough Draft of PSet 10 due to Canvas @ 9pm
- Quiz 9 (There is no Quiz 8) due to Canvas at 6pm on Friday

### Sun

April 28

Topics/Goals:

Lecture:

Assessments:

- PSet 10 to Canvas @ 9pm
- PSet 11 assigned

## Week 11

## Week 11

Topics/Goals:

Lecture:

Assessment:

### Mon

April 29

Topics/Goals:

Lecture:

Assessments:

- PSet 10 Self-grade and reflection due @ 7pm
- PSet 11 assigned

### Thurs

May 2

Topics/Goals:

NP Complete Problems
- Analyze runtime of Bellman Ford
- Describe the landscape of problems
- Describe how to compare the difficulty of problems

Lecture:

Assessments:

- Quiz 10 due to Canvas at 6pm on Friday

### Fri

May 3

Topics/Goals:

Lecture:

Assessments:

- Rough Draft of PSet 11 due to Canvas @ 9pm
- Quiz 10 due to Canvas at 6pm on Friday

### Sun

May 5

Topics/Goals:

Lecture:

Assessments:

- PSet 11 to Canvas @ 9pm

## Week 12

## Week 12

Topics/Goals:

Lecture:

Assessment:

### Mon

May 6

Topics/Goals:

Lecture:

Assessments:

- PSet 11 Self-grade and reflection due @ 7pm
- PSet 12 available

### Thurs

May 9

Topics/Goals:

Reflections/Review
Assessments:

- Overall Reflection and Self-Grade Due @ 8:00 am
- Quiz 11 due to Canvas by 6pm on Friday.