CMSC 351 - Algorithms

Section 0301:

This course presents an introduction to the techniques for designing efficient computer algorithms and analyzing their running times. General topics include asymptotics, solving summations and recurrences, algorithm design techniques, analysis of data structures, and introduction to NP-completeness.

Course Information

Textbook (on reserve at McKeldin Library):
  • Cormen, Thomas H.; Leiserson, Charles E.; Rivest, Ronald L.; Stein, Clifford (2009). Introduction to Algorithms (3rd Ed.). MIT Press (any edition is fine).
Supplementary Book:


Exam Dates

  • Midterm #1: Tuesday, October 6, 6:00 PM - 8:00 PM, Location: Zoom Online
  • Midterm #2: Tuesday, November 10, 6:00 PM - 8:00 PM, Location: Zoom Online
  • Final Exam: Friday, Dec 18, 4:00 PM - 6:00 PM, Location: Zoom Online


Week of Monday Wednesday Friday
08/31 Introduction
09/07 no class (labor day)


Mohammad Nayeem Teli (nayeem at

Office: Online
Office Hours: MWF 11:00 - 12:00 PM

Teaching Assistants

  • Eric Xiao, erix at
  • Jie Li, jli2718 at
  • Md Ishat-E-Rabban, ier at
  • Ksenia Lekomtceva, klekomtc at
Office hours (Online)
Monday Jie: 12:00 PM - 2:00 PM
Tuesday Eric: 10:00 AM - 11:00 AM
Wednesday Ishat: 1:00 PM - 5:00 PM
Thursday Eric: 10:00 AM - 11:00 AM
Friday Jie: 11:00 AM - 1:00 PM,
Ksenia: 1:00 - 3:00 PM

Class Resources

Online Course Tools
  • GradeScope - This is where you submit and view your homework submissions and see your grades.
  • ELMS - This is where you can see your final grades and homework solutions.
  • Piazza - This is the place for class discussions. Please do not post homework solutions here.

Background Material
The following web pages provide some background and other helpful information.

Exam Related Material


Click the name of an assignment below to see its specifications.

Homework Name
Due Date*
Homework 0 Sep. 04, 2020

* All homeworks are due at 11:59 PM on the due date.