Location: MWF 1-1:50pm & 2-2:50pm @ Taylor 200
Instructor: Dr. Heather Guarnera
TA: Craig Akiri, Bolanle Oladeji, Kevin Yuan
Office Hours: See schedule


This schedule is subject to change. Resources correspond to activities or materials covered during class on the listed day. You are expected to read the assigned chapters (♢) before class. Plicker questions will be based on assigned readings. In-class activities (★) are due by the following class meeting unless otherwise stated. Homework assignments (☆) are listed on the day they are assigned. Videos (╠) are optional; they are supplemental to the assigned reading.

Date Day Topic Resources Assignments
01/11 W Intro [syllabus]
[book access]
♢ Ch. 1.1 - 1.2
[01-slides]
01/13 F Project Discussion - Q&A with seniors Final Project
01/16 M No class: MLK Teach-in day

01/18 W Insertion sort; Analyzing algorithms ♢ Ch. 2.1 - 2.2
[02-slides]
HW 1
01/20 F Growth of functions ♢ Ch. 3.1 - 3.2
[03-slides]

01/23 M Basic data structures
(stacks, queues, linked lists, trees)
♢ Ch. 10.1, 10.2, 10.4
[04-slides]
01/25 W Hash tables & hash functions ♢ Ch. 11.1 - 11.2, 11.4
[05-slides]
[ex: chaining]
[ex: linear probing]
[ex: double hashing]
01/27 F due: Project Proposal
01/30 M Heaps, priority queues, heapsort; ♢ Ch. 6.1 - 6.5
[06-slides]
[viz: max-heap operations, heapsort]
02/01 W Mergesort ♢ Ch. 2.3
[07-slides]
[ex: merge-sort]
02/03 F Library Workshop
due: HW1

HW 2
02/06 M Quicksort ♢ Ch. 7.1 - 7.4
[08-slides]

02/08 W Sorting lower bounds; Linear sorting; ♢ Ch. 8.1 - 8.4
[09-slides]
[viz: counting sort]
[viz: radix sort using base 10]
02/10 F
due: Annotated Bibliography


02/13 M Binary Search Trees (BSTs) ♢ Ch. 12.1 - 12.3
[10-slides]
[ex: BST insert]
[ex: BST search]
02/15 W Red Black Trees (RBTs) ♢ Ch. 13.1 - 13.3
[11-slides]
[ex: RBT insert]

02/17 F Review
due: HW2


02/20 M EXAM 1 Topics
Page 1 of Exam - Instructions

02/22 W Greedy Method ♢ Ch. 16.1 - 16.3
[12-slides]
HW 3
02/24 F

02/27 M Divide and Conquer
♢ Ch. 4.1 - 4.5
[13-slides]
03/01 W Divide and Conquer [master theorem handout]

03/03 F due: Intermediate Code

03/06 M Dynamic Programming ♢ Ch. 15.1 - 15.4
[14-slides]
[viz: 0-1 knapsack problem]
[ex: matrix-chain product]
[ex: 0-1 knapsack problem]
03/08 W Dynamic Programming
03/10 F Writing Workshop
due: First Draft

03/13 M No classes - Spring Break

03/15 W No classes - Spring Break

03/17 F No classes - Spring Break

03/20 M No classes - Spring Break

03/22 W No classes - Spring Break

03/24 F No classes - Spring Break

03/27 M Writing & Project Workshop
03/29 W Graph representation; searches and topological sort
due: HW3
♢ Ch. 20.1-20.4
[15-slides]
[ex: BFS]
[ex: DFS]
HW 4
03/31 F Graphs (continued) due: Peer Review

04/03 M Minimum Spanning Tree (MST) ♢ Ch. 21.1-21.2
[16-slides]
[ex: Prim]
[ex: Kruskal]
04/05 W Minimum Spanning Tree (MST)
04/07 F Survey; due: Intermediate Code
HW 5
04/10 M Shortest Paths ♢ Ch. 22.1-22.5
[17-slides]
[ex: dijkstra (undirected graph)]
[ex: dijkstra (digraph)]
[ex: DAG]
[ex: Bellman Ford]
04/12 W Shortest paths

04/13 R Department meeting to discuss Senior IS in Taylor 110; 11am-12:30pm

04/14 F EXAM 2 Topics
Page 1 of Exam - Instructions

04/17 M TBA: Workshop
due: HW 4


04/19 W Research Talk: Fellow Travelers Property [slides]

04/21 F No classes - Required attendance at IS Symposium
Survey
04/24 M Project Discussion
due: All Final Deliverables (software, paper, presentation)
Rubric

04/26 W Project Discussion Q&A

04/28 F Project Discussion
due: HW 5
Q&A
05/01 M Project Discussion
due: Upload your Junior IS idea
Q&A
05/5 F Section 1 (1pm Setion) Exam Day 12-2:30 Q&A
05/9 Tue Section 2 (2pm Section) Exam Day 4-6:30 Q&A