date | syllabus | plan | documents and reading assignments
|
---|
03/24 | class introduction | |
- Intro to DSA: slides
- Previewing: Chapter 1
|
03/02, 03/03 | DSA introduction, C++ introduction | |
|
03/09, 03/10 | C++ introduction (Chapter 1) and arrays (Sec 3.1) | homework 1 announced |
|
03/16, 03/17 |
linked lists, recursion (Chapter 3) and GitHub (guest lecture)
|
|
|
03/23, 03/24 |
analysis tools (Chapter 4)
|
homework 1 due; homework 2 announced
|
|
03/30, 03/31 |
stack (Section 5.1)
|
|
|
04/06, 04/07 |
no class on 04/06 because of spring vacation; queue/dequeue (Sections 5.2, 5.3)
|
homework 3 announced
|
|
04/13, 04/14 |
list and iterator (Chapter 6)
|
homework 2 due
|
|
04/20, 04/21 |
no class on 04/20 because of last-minute studying; midterm exam on 04/21
|
final project announced
|
- midterm range: Chapters 1, 3, 4, 5, 6 of textbook
|
04/27, 04/28 |
tree (Chapter 7)
|
homework 3 due; homework 4 announced |
|
05/04, 05/05 |
heaps and priority queues (Chapter 8)
|
|
|
05/11, 05/12 |
hash tables and maps (Sections 9.1, 9.2, 9.3)
|
homework 4 due; homework 5 announced |
|
05/18, 05/19 |
binary tree and AVL tree (Sections 10.1, 10.2)
|
|
|
05/25, 05/26 |
skip lists and dictionaries (Sections 9.4, 9.5)
|
homework 5 due; homework 6 announced |
|
06/01, 06/02 |
(2, 4)-tree and red-black tree (Sections 10.4, 10.5)
|
|
|
06/08, 06/09 |
sorting (Sections 11.1, 11.2, 11.3)
|
homework 6 due
|
|
06/15, 06/16 |
Dynamic programming
|
|
|
06/22, 06/23 |
summary on 06/22; no class on 06/23 and good luck with your other finals
|
final project due
|
|