CPSC 225 | 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, "Eck" refers to the textbook (Introduction to Programming Using Java).
Dates for things in light gray are for planning purposes and may be adjusted slightly. Expect class preparation assignments for most classes, weekly labs, and several projects.
Assignments | |||||
---|---|---|---|---|---|
Week 1: 1/21-1/24Topics: course introduction; review of procedural programming |
|||||
Wed |
Materials from class:
|
introductory survey (on Canvas) |
|||
Thu | lab 1 Linux and Eclipse due Thu 1/30 1:10pm |
||||
Fri |
Materials from class:
|
class prep — review of procedural programming (on Canvas) due Thu 1/23 10pm |
|||
Week 2: 1/27-1/31Topics: review of object-oriented programming |
|||||
Mon |
Materials from class:
|
class prep — programming with objects (on Canvas) due Sun 1/26 10pm |
project 1a Flip due Mon 2/3 11:59pm |
||
Wed |
Materials from class:
|
class prep — writing classes (on Canvas) due Tue 1/28 10pm |
|||
Thu | |||||
Fri |
Materials from class:
|
||||
Week 3: 2/3-2/7Topics: OOAD fundamentals; program correctness |
|||||
Mon | Materials from class: | project 1b OO Flip due Mon 2/10 11:59pm |
|||
Wed |
Reading:
|
class prep — Eck 8.1, 4.1, 4.7.1, 4.6.5 (on Canvas) due Tue 2/4 10pm |
|||
Thu | lab 2 Testing due Thu 2/13 1:10pm |
||||
Fri |
Reading:
|
class prep — Eck 8.2.1-8.2.3, 8.4.1 (on Canvas) due Thu 2/6 10pm |
|||
Week 4: 2/10-2/14Topics: correctness and robustness: debugging, preventing bugs, checking preconditions, robust handling of input, exceptions |
|||||
Mon |
Materials from class:
|
lab 1 resubmit due Mon 2/10 9:40am |
|||
Wed |
Materials from class:
|
||||
Thu | lab 3 Correctness due Thu 2/20 1:10pm |
||||
Fri |
Reading:
|
class prep — Eck 8.3 (on Canvas) due Thu 2/13 10pm |
|||
Week 5: 2/17-2/21Topics: data structure fundamentals: arrays |
|||||
Mon |
Reading:
|
class prep — arrays (on Canvas) due Sun 2/16 10pm |
|||
Wed |
Materials from class:
|
||||
Thu | lab 4 Arrays and Debugging due Thu 2/27 1:10pm |
||||
Fri |
Materials from class:
|
class prep — Omino (on Canvas) due Thu 2/20 11:59pm (optional, but encouraged) |
project 2 Omino due Fri 3/7 11:59pm |
flip resubmit due Fri 2/21 9:40am feedback hand in as flipv2 if you got less than 3 on the initial handin (or didn't hand in anything), come to office hours to discuss resubmit |
|
Week 6: 2/24-2/28Topics: searching, sorting, shuffling; linked lists |
|||||
Mon |
Reading:
|
class prep (on Canvas) due Sun 2/23 10pm |
|||
Wed |
Reading:
|
class prep (to be posted) due Tue 2/25 10pm |
|||
Thu | |||||
Fri |
Reading:
|
class prep (to be posted) due Thu 2/27 10pm |
|||
Week 7: 3/3-3/7Topics: |
|||||
Mon | |||||
Wed | |||||
Thu | |||||
Fri | |||||
Week 8: 3/10-3/14Topics: |
|||||
Mon | project 3 | ||||
Wed | |||||
Thu |
exam 1
|
||||
Fri | |||||
Spring Break: 3/17-3/21 |
|||||
Week 9: 3/24-3/28Topics: |
|||||
Mon | |||||
Wed | |||||
Thu | |||||
Fri | |||||
Week 10: 3/31-4/4Topics: |
|||||
Mon | |||||
Wed | |||||
Thu | |||||
Fri | |||||
Week 11: 4/7-4/11Topics: |
|||||
Mon | project 4 | ||||
Wed | |||||
Thu | |||||
Fri | |||||
Week 12: 4/14-4/18Topics: |
|||||
Mon | |||||
Wed | |||||
Thu |
exam 2
|
||||
Fri | |||||
Week 13: 4/21-4/25Topics: |
|||||
Mon | |||||
Wed | |||||
Thu | |||||
Fri | |||||
Week 14: 4/28-5/2Topics: |
|||||
Mon | |||||
Wed | |||||
Thu | |||||
Fri | |||||
Week 15: 5/5Topics: |
|||||
Mon | |||||
Reading Period: 5/6-5/8 |
|||||
Tue | |||||
Wed | |||||
Thu | |||||
Final Exams: 5/9-5/12 |
|||||
Fri |
final exam
5/9 8:30-11:30am |
end-of-semester deadline no work accepted after 5/9 11:30am |
|||
Sat | |||||
Sun | |||||
Mon |