Basic information:
Course description
The goal of this course is to introduce students to various advanced data structures (such as lists, stacks, queues, trees, hash tables, graphs), algorithms (such as a variety of sorting algorithms, tree-related algorithms, and graph-related algorithms), and their implementations. By the end of this course, each student will have a strong understanding of fundamental data structures, appreciate the levels of abstraction used in their design and analysis, and improve their software development skills through implementation and application of these data structures and related algorithms.
Textbook
Announcements
Schedule and class notes (being updated)
Date | Lecture | Note |
Week 1 8/18 |
Introduction and Course Overview [Slides] | - |
8/20 | Review of C++ and Object-Oriented Programming [Slides] | - |
Week 2 8/25 |
Review of C++ and Object-Oriented Programming (cont.) [Slides] | - |
8/27 | Analysis of Algorithm [Slides] | - |
Week 3 9/1 |
Labor Day (no class) | - |
9/3 | Analysis of Algorithm (cont.) [Slides] | - |
Week 4 9/8 |
Abstract Data Type, List, Stack, and Queue [Slides] | - |
9/10 | Quiz | - |
Week 5 9/15 |
Abstract Data Type, List, Stack, and Queue (cont.) [Slides] | - |
9/17 | Abstract Data Type, List, Stack, and Queue (cont.) [Slides] | - |
Week 6 9/22 |
TBD | - |
9/24 | TBD | - |
Week 7 9/29 |
TBD | - |
10/1 | TBD | - |
Week 8 10/6 |
TBD | - |
10/8 | TBD | - |
Week 9 10/13 |
TBD | - |
10/15 |
|
- |
Week 10 10/20 |
TBD | - |
10/22 | TBD | - |
Week 11 10/27 |
TBD | - |
10/29 | TBD | - |
Week 12 11/3 |
TBD | - |
11/5 | TBD | - |
Week 13 11/10 |
TBD | - |
11/12 | TBD | - |
Week 14 11/17 |
TBD | - |
11/19 | TBD | - |
Week 15 |
|
- |
Week 16 12/1 |
TBD | - |
12/3 | Pre-finals | - |
12/6 |
|
- |
Grading policy