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! If
you got a C+ or worse in CS 173, we strongly recommend retaking
173 before taking 374.

Requirements

This course is required for all undergraduates majoring in Computer Science majors (in both Engineering and LAS) and Computer Engineering.

Grades will be based on weekly written homeworks,
weekly quizzes, two midterms, and a final exam. See the grading policies for more details.

Difficulty

Many students consider 374 to be a challenging course in the
undergraduate CS/CE curriculum. On the other hand, we believe
(and employers and alumni seem to agree) that 374 is also a very useful course in the undergraduate CS/CE curriculum.

There is no required textbook.Lecture notes will be posted to the course web site as the semester progresses. You should
also look at a wide variety of additional resources (see the link at the bottom
of this page). Some older lecture notes and/or slides are already available:

All lectures will be recorded, and links to lecture videos will be
added to the schedule web page as
the semester progresses. However, we strongly encourage students to
attend the lectures in person to get the most out of them. Videos
from several past semesters are available:

We will use Moodle for biweekly sanity-check quizzes,
and possibly to report exam grades. If you are not
already registered, you can add yourself with the
access code NEW CODE TO BE INSERTED HERE.

Gradescope

We will use
OLD Gradescope for
homework submission and grading. Anyone can sign up for access to
the site with their favorite alias and email address, using the
self-enrollment code NEW CODE TO BE INSERTED
HERE. We will separately ask you for your alias, so
that we can map your homework grades to you.

Piazza

We will use Piazza
for online discussions. Anyone can
sign up
for access to the CS/ECE 374 Piazza site with their
favorite email address. 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.)