CSCI 3104 Fall 2011


Administrative Information

Lectures sec. 010: MWF 3:00pm -- 3:50pm, MUEN E0046
Recitations sec. 011: F 11:00am -- 11:50am, KOBL 235
sec. 012: F 1:00pm -- 1:50pm, ECCR 131
sec. 013: F 2:00pm -- 2:50pm, ECCR 139
Instructor Qin (Christine) Lv
Phone (303) 492 - 8821
Fax (303) 492 - 2844
Office ECCR 1B05C
Office hours Monday 10:00am -- 11:50am or by appointment

Course Description

This course studies the design and analysis of efficient algorithms, including techniques and their applications to different domains. Topics covered in this course include advanced data structures, computational geometry, cryptography, dynamic programming, greedy algorithms, divide-and-conquer, graph algorithms (e.g., depth-first search), network algorithms (e.g., shortest paths), approximation algorithms, etc.


Data structures, discrete math, two semesters of calculus. You are also expected to have facility with a programming language such as C, C++, Java, or Python.


Required: Algorithms by S. Dasgupta, C. Papadimitriou, U. Vazirani. First Edition, McGraw-Hill, 2008. You can also download the PDF of the pre-print version, but note that it does not match the printed version.

Optional: Introduction to Algorithms by T. Cormen, C. Leiserson, R. Rivest, C. Stein. Third Edition, The MIT Press, 2009.

Course Schedule

Please check the internal course website for the most up-to-date schedule.


Your performance in this course will be measured by the following components:


You should read and adhere to the university policies.

Everything you turn in must be the work of your own. You should work by yourself on all assignments, unless specified explicitly as a group assignment. All submitted work should include the Honor Code Pledge.

Copyright© 2011. All rights reserved.