Date |
Topic |
Required Reading |
Notes |
Assignments Out |
Slides |
1/11 |
Introduction, data structures, ADTs, abstraction, interfaces/implementation |
|
|
|
|
1/16 |
(Snow day) |
|
|
Project 1, due on Moodle Mon 1/29, 11:59pm |
|
1/18 |
C++ review |
|
|
|
|
1/23 |
Vector ADT |
|
IntVector.h IntVector.cpp |
|
|
1/25 |
Analysis of algorithms, big-oh notation |
|
|
|
|
1/30 |
Big-oh continued |
|
|
|
|
2/1 |
List ADT, singly linked lists |
|
|
Project 2, due on Moodle Tue 2/13, 11:59pm |
|
2/6 |
Doubly-linked lists, started stacks |
|
|
|
|
2/8 |
Finished stacks, queues |
|
|
|
|
2/13 |
Quadratic sorting |
|
|
Homework 1, due in class Tue Feb 20 |
|
2/15 |
Trees, binary trees, started binary search trees |
|
|
Project 3, due on Moodle Fri 3/2, 5:00pm |
|
2/20 |
More binary search trees, started set ADT |
|
|
|
|
2/22 |
Midterm I |
|
|
|
|
2/27 |
Binary search trees |
|
|
|
|
3/1 |
Binary search trees |
|
|
|
|
3/6 |
Spring break |
|
|
|
|
3/8 |
Spring break |
|
|
|
|
3/13 |
Hash tables |
|
|
Project 4, due on Moodle Wed 3/28, 5:00pm |
|
3/15 |
Hash tables |
|
|
|
|
3/20 |
Treesort, mergesort |
|
|
|
|
3/22 |
Quicksort |
|
|
|
|
3/27 |
Priority queues, heaps, heapsort |
|
|
Homework 2, due in class Tue Apr 3 |
|
3/29 |
Easter break |
|
|
|
|
4/3 |
Finish heapsort, other sorts, exam review |
|
|
|
|
4/5 |
Midterm II |
|
|
Project 5, due on Moodle Mon 4/16 11:59pm |
|
4/10 |
Graphs |
|
|
|
|
4/12 |
Depth first search, breadth first search |
|
|
|
|
4/17 |
Dijkstra's algorithm |
|
|
Project 6, due on Moodle Mon 4/30 11:59pm |
|
4/19 |
Red-black trees |
|
|
|
|
4/24 |
Red-black trees, continued |
|
|
|
|
4/26 |
Course wrapup |
|
|
|
|