Course CS 5800: Algorithms
Semester Fall 2023
Instructor Soheil Behnezhad (WVH 348)
Meeting Time Mon Thu 11:45 am— 1:25 pm at Richards Hall 458
Prerequisites Prior to enrolling in this course, students should possess a strong foundation in rigorous mathematical reasoning and basic functions (such as logarithms, exponentials, etc.). Additionally, having completed a course in discrete mathematics would be beneficial.
Office Hours TBD
Discussions Please use Piazza (link TBA) for course-related inquiries such as material, assignments, due dates, etc. Unless necessary, avoid direct emailing to the TAs or the instructor to promote efficient and collaborative discussions within the course.
Course Overview

This course will present the mathematical techniques used for the design and analysis of algorithms. Topics will include asymptotic notation, recurrences, sorting and searching, data structures, lower bounds, hashing, greedy algorithms, dynamic programming, graph algorithms, and NP-completeness.


The following grading policy is subject to change.

  • 15% Quizzes & Particpation
  • 25% Homework Assignments
  • 30% Midterm
  • 30% Final Exam
# WD Date Topics References Notes