Analysis of Algorithms

CMPU-241-51, Spring 2021

Course Information

Course Description

Introduces the systematic study of algorithms and their analysis with regard to time and space complexity. Topics include divide-and-conquer, dynamic programming, greediness, randomization, upper and lower-bound analysis, and introduction to NP completeness. Emphasis is placed on general design and analysis techniques that underlie algorithmic paradigms. Builds a foundation for advanced work in computer science.


Class Meeting Details

As the semester progresses, select days may be held fully remotely.

Course Objectives

Course Materials

The primary textbook is Introduction to Algorithms (3rd. edition), written by Thomas H. Coren et al. (ISBN 978-0262033848).

Other articles and readings may be assigned. These will be posted on Moodle.

Learning Assessments

All assessments are distributed on and to be submitted on Moodle.



Homework problem sets will be issued roughly every other week. These will primarily consist of problems the the textbook or be related to other readings. Homework sets are equally weighted. Written portions of homeworks are expected to be typeset unless otherwise specified.


There will be 2-4 projects (time and class situation permitting) that consist of a significant programming component. The remaining project will consist of a mini presentation about an esoteric or interesting algorithm and its applications. These mini presentations will be scheduled throughout the second half of the semester. Projects are equally weighted.


All exams will be take-home and open-book / open-note. There may be a time limit on portions of some exams. Exams are equally weighted.


In lieu of a final, we will have a research project. Details will be issued in the fourth week. This project will be an exploration into a topic that is algorithmic in nature, culminating in a written report, presentation, and some programming artifacts. Given the size of the enrollment of the class, presentations will likely be recorded.

Collaborative Work

Select problems on homework sets may be completed in small groups. The names and extent of the collaboration should be noted for each such problem. Projects may be completed in groups of 1-3 students. Other work should be completed individually. As always, discussions considering broader course topics and concepts are permitted (and encouraged!)

Late Work

Without prior approval late work will generally not be accepted except in extreme circumstances. This is not a typical semester, so if something affects your ability to meet a deadline, please get in touch with the instructor as soon as possible. I am much more willing to give extensions on deadlines than to consider late work.

Grading Scheme

Tentative Schedule

This schedule is only tentative. Moodle will contain the authoritative schedule as the semester progresses.

These topics align with their corresponding chapters in the textbook. Not all sections in each chapter will be assigned. Specific sections will be posted to the course Moodle site.

Title IX Reporting Responsibility and Resources

Vassar College is committed to providing a safe learning environment for all students that is free of all forms of discrimination and sexual harassment, including sexual assault, domestic violence, dating violence, and stalking. If you (or someone you know) has experienced or experiences any of these incidents, know that you are not alone. Vassar College has staff members trained to support you in navigating campus life, accessing health and counseling services, providing academic and housing accommodations, helping with legal protective orders, and more.
Please be aware all Vassar faculty members are "responsible employees," which means that if you tell me about a situation involving sexual harassment, sexual assault, dating violence, domestic violence, or stalking, I must share that information with the Title IX Coordinator. Although I have to make that notification, you will control how your case will be handled, including whether or not you wish to pursue a formal complaint. Our goal is to make sure you are aware of the range of options available to you and have access to the resources you need.
If you wish to speak to someone privately, you can contact any of the following on-campus resources:

The SAVP website and the Title IX section of the EOAA website ( have more information, as well as links to both on- and off-campus resources.

Academic Integrity

For your own education and for fairness to the rest of the students in the class, it is essential that you perform your work yourself and conduct yourself with honesty and integrity. Your written work must be your own, not plagiarized or closely paraphrased from other sources, including the internet. Please consult the handbook, "Going to the Source," to read more about Vassar's policies regarding originality, academic integrity, and attribution. When you use figures or images from other sources, you must properly attribute your sources. It is very easy and tempting to use the internet to assist you in completing assignments, so you must be very careful to ensure that your work for the course is the result of your own thinking and your own efforts.

Further I heartily encourage you to consult the Computer Science department's Student Integrity Policy: link.

Academic Accommodations

Academic accommodations are available for students registered with the Office for Accessibility and Educational Opportunity (AEO). Students in need of disability (ADA/504) accommodations should schedule an appointment with me early in the semester to discuss any accommodations for this course that have been approved by the Office for Accessibility and Educational Opportunity, as indicated in your AEO accommodation letter.