Department Seal Sandia Mountains

CS 561 Class Syllabus

Course Web Page

Contact Info for Instructor and TA, office hours, assignments, tests, and general information is all on the course web page.

Course Description

The advanced study of data structures and algorithms and the mathematics needed to analyze their time and space complexity.


Our text is Introduction to Algorithms, third edition by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Another good reference is Algorithm Design by Kleinberg and Tardos


CS361 or an equivalent undergraduate algorithms class is a prerequisite for this class. You should be familiar with the following topics: asymptotic notation; recurrence relations and simple techniques for solving recurrences; proofs and basic proof techniques such as induction; basic probability; basic logic; basic graph theory; and algorithms and data structures as covered in an undergraduate class. If you have taken and done well in an undergraduate class that uses our required textbook, or the textbook "Algorithm Design" by Kleinberg and Tardos, then you should be ok. If not, then you should take CS361 (and/or CS362) prior to taking this class.


Notes on Grading Hws

Your hws and test answers should have the following properties. We will be looking for these when we grade:


Topics will likely include:

Course Assessment

Approximate weighting:

Grading Policies

"No deals, Mr. Bond.": Grades assigned at the end of the semester are final. You will not be able to do any additional projects, papers, etc. to change your grade.