| CPSC 327 | Data Structures and Algorithms | Spring 2026 |
Readings are listed on the schedule page on the day when they will be discussed in class. "ADM" refers to the textbook (The Algorithm Design Manual). Readings are the first introduction for most material — it often takes more than one encounter to fully absorb something, and class time is more effective if it can be used to fill in the gaps and answer questions about things you have already started to think about. You are encouraged to complete the assigned reading before class to identify the main ideas and note questions, and then revisit the reading after class to more fully understand the material.
Dates for things in light gray are for planning purposes and are subject to change.
| Assignments | ||||
|---|---|---|---|---|
Week 1: 1/21-1/23Topics: course introduction; analysis of algorithms |
||||
| Wed |
Materials from class:
|
introductory survey (on Canvas) |
||
| Fri |
Reading:
|
|||
Week 2: 1/26-1/30Topics: analysis of algorithms; standard ADTs and basic data structures |
||||
| Mon |
Reading:
|
|||
| Wed |
Reading:
|
homework 1 due Wed 2/4 in class |
||
| Fri |
Reading:
|
|||
Week 3: 2/2-2/6Topics: ADTs and implementations: containers (lists, stacks, queues), lookup (dictionaries); data structures: binary trees, BSTs, and balanced BSTs |
||||
| Mon |
Reading:
|
|||
| Wed |
Reading:
|
homework | ||
| Fri | Reading: | |||
Week 4: 2/9-2/13Topics: |
||||
| Mon | ||||
| Wed | homework | |||
| Fri | ||||
Week 5: 2/16-2/20Topics: |
||||
| Mon | ||||
| Wed | homework | |||
| Fri | ||||
Week 6: 2/23-2/27Topics: |
||||
| Mon | programming assignment | |||
| Wed | homework | |||
| lab session Thu 4-5pm |
||||
| Fri |
exam
|
|||
Week 7: 3/2-3/6Topics: |
||||
| Mon | ||||
| Wed | homework | |||
| Fri | ||||
Week 8: 3/9-3/13Topics: |
||||
| Mon | ||||
| Wed | homework | |||
| Fri | ||||
Spring Break: 3/14-3/22 |
||||
Week 9: 3/23-3/27Topics: |
||||
| Mon | programming assignment | |||
| Wed | homework | |||
| lab session Thu 4-5pm |
||||
| Fri |
exam
|
|||
Week 10: 3/30-4/3Topics: |
||||
| Mon | ||||
| Wed | homework | |||
| Fri | programming assignment | |||
Week 11: 4/6-4/10Topics: |
||||
| Mon | ||||
| lab session Tue 4-5pm |
||||
| Wed | homework | |||
| Fri | ||||
Week 12: 4/13-4/17Topics: |
||||
| Mon | ||||
| Wed | homework | |||
| Fri | ||||
Week 13: 4/20-4/24Topics: |
||||
| Mon | programming assignment | |||
| Wed | HWS Day (no class) | homework | ||
| Fri |
exam
|
|||
Week 14: 4/27-5/1Topics: |
||||
| Mon | ||||
| lab session Tue 4-5pm |
||||
| Wed | homework | |||
| Fri | ||||
Week 15: 5/4Topics: |
||||
| Mon | ||||
Reading Period: 5/5-5/7 |
||||
| Tue | ||||
| Wed | ||||
| Thu | ||||
Exams: 5/8-5/11 |
||||
| Fri | ||||
| Sat | ||||
| Sun | ||||
| Mon |
exam 8:30-11:30am
|
end of semester deadline no work accepted after 11:30am |
||