CPSC 327 | Data Structures and Algorithms | Spring 2025 |
Class preparation assignments are generally based on the assigned reading and are due by 10pm the night before the class for which they are listed. For readings, "ADM" refers to the textbook (The Algorithm Design Manual).
Dates for things in light gray are for planning purposes and may be adjusted slightly. Expect class preparation assignments for most classes, weekly homeworks, and several programming assignments.
Assignments | |||||
---|---|---|---|---|---|
Week 1: 1/21-1/24Topics: course introduction; analysis of algorithms |
|||||
Wed |
Materials from class:
|
introductory survey (on Canvas) |
|||
Fri |
Reading:
|
class prep — ADM 2.1-2.4 (on Canvas) due Thu 1/23 10pm |
|||
Week 2: 1/27-1/31Topics: analysis of algorithms; ADTs |
|||||
Mon |
Reading:
|
class prep — big-Oh for sums and recurrence relations, ADM 2.7-2.8 (on Canvas) due Sun 1/26 10pm |
|||
Wed |
Reading:
|
homework 1 due Fri 2/7 in class |
|||
Fri |
Reading:
|
class prep — ADM 3.1 (on Canvas) due Thu 1/30 10pm |
|||
Week 3: 2/3-2/7Topics: data structures: arrays, linked lists, binary trees; binary search trees, balanced BSTs |
|||||
Mon |
Materials from class:
|
||||
Wed |
Reading:
|
class prep — BSTs (on Canvas) due Tue 2/4 10pm |
|||
Fri |
Reading:
|
class prep — AVL trees (on Canvas) due Thu 2/6 10pm |
homework 2 [corrected!] due Fri 2/14 in class |
||
Week 4: 2/10-2/14Topics: balanced search trees (2-4 trees); heaps; hashtables |
|||||
Mon |
Reading:
Materials from class:
|
class prep — 2-4 trees (on Canvas) due Sun 2/9 10pm |
|||
Wed |
Reading:
|
class prep — heaps (on Canvas) due Tue 2/11 10pm |
|||
Fri |
Reading:
|
class prep — hashtables (on Canvas) due Thu 2/13 10pm |
homework 3 due Fri 2/21 in class |
||
Week 5: 2/17-2/21Topics: specialized data structures; developing data structures; applications of data structures and fundamental techniques |
|||||
Mon |
Reading:
|
class prep — ADM 15 (on Canvas) due Sun 2/16 10pm |
|||
Wed |
Reading:
|
class prep — sorting (on Canvas) due Tue 2/18 10pm |
|||
Fri |
Reading:
|
class prep — fundamental techniques (on Canvas) due Thu 2/20 10pm |
homework 4 due Fri 2/28 in class |
||
Week 6: 2/24-2/28Topics: graphs |
|||||
Mon |
Reading:
|
class prep — ADM 7.1-7.2 (on Canvas) due Sun 2/23 10pm |
programming assignment 1 | hw1 resubmit due Mon 2/24 in class feedback if you got less than 3 on the initial handin (or didn't hand in anything), come to office hours to discuss resubmit |
|
Wed |
exam 1
|
||||
Fri |
Reading:
|
class prep — ADM 7.5-7.7 (to be posted) due Thu 2/27 10pm |
|||
Week 7: 3/3-3/7Topics: |
|||||
Mon | |||||
Wed | |||||
Fri | programming assignment 2 | ||||
Week 8: 3/10-3/14Topics: |
|||||
Mon | |||||
Wed | |||||
Fri | |||||
Spring Break: 3/17-3/21 |
|||||
Week 9: 3/24-3/28Topics: |
|||||
Mon | programming assignment 3 | ||||
Wed | |||||
Fri | |||||
Week 10: 3/31-4/4Topics: |
|||||
Mon | |||||
Wed |
exam 2
|
||||
Fri | |||||
Week 11: 4/7-4/11Topics: |
|||||
Mon | design problem | ||||
Wed | |||||
Fri | programming assignment 4 | ||||
Week 12: 4/14-4/18Topics: |
|||||
Mon | |||||
Wed |
exam 3
|
||||
Fri | |||||
Week 13: 4/21-4/25Topics: |
|||||
Mon | |||||
Wed | |||||
Fri | |||||
Week 14: 4/28-5/2Topics: |
|||||
Mon | |||||
Wed | |||||
Fri | |||||
Week 15: 5/5Topics: |
|||||
Mon | |||||
Reading Period: 5/6-5/8 |
|||||
Tue | |||||
Wed | |||||
Thu | |||||
Final Exams: 5/9-5/12 |
|||||
Fri | |||||
Sat |
final exam
5/10 7-10pm |
end-of-semester deadline no work accepted after 5/10 10pm |
|||
Sun | |||||
Mon |