This course presents the fundamental techniques for designing efficient computer algorithms, proving their correctness, and analyzing their running times. We will discuss a number of topics, including greedy algorithms, divide and conquer algorithms, dynamic programming, network flow algorithms, NP completeness and computational intractability, approximation algorithms, and randomized algorithms.

For further information, please see the course syllabus.

General Information

Class TimeTue, Thu 9:30-10:45am
LocationCSI 2117
Instructor Dave Mount
Office AVW 3373
Office HoursMon 3:30-4:30pm and Wed 1-2pm. (Or send me email to request a time.)
Teaching Assistant Ahmed Abdelrazek
Office AVW 4103 (If he is not there, try his permanent office in AVW 3457)
Office HoursMon 1-2pm and Tue 12:30-1:30pm. (Or send him email to request a time.)


Importance class announcements will be made through Piazza. Once class has started, I'll send invitations to join the system.

  Return to CMSC 451 Home  —  The cool image at top of page is credited to the Web artist higyou