CS 473: About This Course

About This Course

What is this?
CS 473 (officially "CS 498 DL1") is an algorithms course aimed at advanced undergraduates and graduate students in computer science and related disciplines.
The course will cover a wide range of algorithm design and analysis techniques including the following:
Grades will be based on regualr written homeworks (30% total), two midterms (20% each), and a final exam (30%). See the grading policies for more details.
CS 374 or equivalent, or graduate standing. In particular, we assume that students have mastered the material taught in CS 173 (discrete mathematics, especially induction) and CS 225 (basic algorithms and data structures). Note that "mastery" is not the same as "exposure" or even "a good grade"; hence, Homework Zero!
Am I in the right place?
Well, that depends.
This course replaces CS 573 as a prerequisite for all 500-level algorithms courses, in particular:
Degree Requirements
This course is not specifically required for any program on campus, but it has been approved to satisfy requirements in each of the following programs: However, this course does not count toward the requirement in all graduate programs for 500-level credits. It's a 400-level course.

Class Resources

Web site
All course materials—announcements, course policies, detailed schedule, lecture notes, lecture videos, homeworks, homework and exam solutions—can be found here. Hey, look! You found it!
Lecture notes
Jeff's algorithms lecture notes will be the primary reference for this class. We will post revisions and new notes to the lecture page as the semester progresses. The lecture note site also contains homeworks and exams from Jeff's past algorithms classes.
The lecture notes have bugs. We will award extra credit to any student who identifies a mistake and offers a suitable correction on Piazza. Yes, typos and spellign mistaks count.
We plan to record all lectures, as in past semesters. However, because the classroom does not have the same built-in recording equipment as the classroms in Siebel and DCL, we will have to record everything ourselves. We anticipate some technical difficulties, especially early in the semester. Lecture videos should appear automatically on a separate page (TBD); links to lecture videos will be added to the schedule web page as the semester progresses. Videos of Jeff's lectures from several past semesters are also available; Jeff has asked the college to maintain these videos permanently.
We will use Moodle for electronic homework submission and to record homework and exam grades. If you were registered for the course at the start of the semester, you should already have access to our Moodle site; if not, you can enroll yourself with the code CS473. (Sorry, Illinois students only.)
We will use Piazza for online discussions. Anyone can sign up for access with their favorite email address and the access code CS473. We strongly encourage posting questions on any course-related topic to Piazza rather than emailing the course staff. You can even post your questions anonymously. (However, we can only give you extra credit for helpful posts if you post them using your real name.)
I've collected a long list of other useful resources on a separate page.

What's happening to CS *73?

As part of a larger curriculum revision, the CS department recently revised its theoretical computer science course offerings. Before the revision, we offered three regular theory courses: The new regular theory currculum has just two courses: This revision was motivated by several factors.