CS 231 Data Structures & Algorithms

This course emphasizes reasoning about data structures and algorithms— understanding correctness, efficiency, and design tradeoffs—before implementing them in code.

Where do I go for…

Instructors

Instructor

Prof. Allen V. R. Harper

  • Lecturer (both sections)
  • Lab A instructor
  • Email: aharper [at] colby.edu
  • Office: Davis 311
Office Hours:
Monday: 9-10 AM 11-12 AM 1–4 PM
Wednesday: 9-10 AM 11–12 AM
Friday: 9-10 AM 11-12 AM

Instructor

Prof. Ike Lage

  • Lab B instructor
  • Email: ilage [at] colby.edu
  • Office: Davis 211
Office Hours:
Monday: 2:20–3:20 PM
Tuesday: 3:00–4:30 PM
Thursday: 11:00 AM–12:00 PM

Course Goals

Grading

Component Weight Notes
Quizzes35%Weekly quizzes; lowest dropped + 1 retake (May 8th).
Final Exam20%Comprehensive assessment at the end of term.
Project Reflection Quiz10%Quiz on previous project; lowest quiz dropped.
Lab Checkpoint10%Implementing project's data structure.
Projects10%Solving larger-scale problems.
Extensions10%Student designed mini-projects.
Participation5%Attendance, Homework, in-class activities.

Final Exam (Sections A & B)

Date: Thursday, May 14th

Time: 6:00–9:00pm

Location: Lovejoy 100 (First Floor Auditorium)

Textbook

No required textbook. Lecture notes and code are posted on Moodle.

Optional free resource:
A Practical Introduction to Data Structures and Algorithm Analysis (Java), Clifford Shaffer