CS 302: Algorithms and Complexity
The study of algorithms is central to computer science. Algorithms are important for solving practical coding problems, but they are also crucial for addressing some of the BIG questions of computer science: what can computers do, what resources do they need to do it, and when is it a good idea to use computers to solve problems? .
Quick Links:
Assignments
Other
- Zoom Class Link
- Zoom Office Hours Link
- Participation Check-in Form
- Teams
- OneNote
- Class recordings: Panopto, Google Drive
Where can I find/turn in
- Problem Sets: Find on this page, turn in on Canvas.
- Problem Set Hints and Solutions: Canvas Files Tab (Hints availalble once Rough Draft is submitted, Solutions available once PSet is submitted)
- Programming Assignments: Find on this page, turn in on Canvas.
- Problem Set-Assessments: turn in on Canvas
- Quizzes and Exams: find and turn in on Canvas
- Reflections: turn in on OneNote
- Class notes: OneNote, links on Calendar
- Announcements/Questions/Discussion: Teams
- List of Deadlines: Canvas and Calendar
- Refresher videos:
- Recursive Runtime: Panopto, Google Drive
- Recursive Correctness Using Induction: Panopto Google Drive
- Recursive Problem Solving: Panopto, Google Drive
- Probability Review: Panopto, Google Drive
- Quicksort Review Panopto, Google Drive
- Proving Problem in NP Panopto, Google Drive