Archived Content

This website is an archive of the Spring 2019 semester of CS 225.
Click here to view the current semester.



Can I enroll if I’m missing the CS 125 / ECE 220 prereq?

Many introductory programming courses that cover the listed materials will suffice, including CS 125, CS 126, and ECE 220. However, CS 101, 103, 105, or 107 are not adequate preparation for the programming you’ll be doing in this class (you should take CS 125 first).

Can I enroll if I’m missing the CS 173 / MATH 213 prereq?

No. The discrete math requirement for the course is real. Most of the claims we make about algorithm performance will be rigorously justified using the proof techniques from CS173 or MATH 213.

If I do not have a prereq, will I be dropped from CS 225?

Yes. If you do not have credit to satisfy both the theory prereq (CS 173/MATH 213) and the programming prereq (CS 125/ECE 220), you must to satisfy both of these prereqs before enrolling in CS 225.

Should I enrolled if I struggled in CS 125?

If you received a B- or below in CS 125 you will almost certainly have a hard time being successful in CS 225.

I want to enroll but the course is full.

Monitor registration frequently, as several students drop within the first two weeks while it is still possible to add the course.

I don’t have an EWS account! Can you make me one?


I can’t find the online recorded lectures

A link to the recorded lectures is available on the Lectures page.

MPs and Labs

Can I attend a different lab section?

No—at least not for credit. Due to the growth of the class, we require that you attend the lab section you are registered for. There will be no exceptions to this policy, as up to four labs are extra credit.

If an exam in another class conflicts with your lab section, you can either attend a different lab section (without getting attendance credit; see below) or ask the other class for a conflict.

You can attend a different lab section if you don’t take away a seat/computer from someone registered for that section. The safest way to make sure that doesn’t happen is to bring your own machine. (You will not, however, get attendance credit.)

Can I work on the MPs / labs from home?

Yes! For remote connecting to EWS, see the Resources page. For setting up the CS 225 environment on a personal computer, see CS 225 on Your Own Machine.

I got a ZERO on the MP but my code works!

The test cases used for grading cover your code more thoroughly than the test cases we provide you with the MP. If you have code that doesn’t abide by C++’s conventions (or for other reasons), your code may compile with the provided code but not with the grading test cases.

We almost never accept regrade requests for mistakes on your part, however trivial they seem. However, if there is an error with our test cases themselves, we will fix those for no penalty.

Can I post code on Piazza if I have problems?

It is almost never okay to post your code on a public post. If it is code unrelated to the MP for clarification purposes, or maybe just a couple lines that does not give any information about your implementation then it should be fine. A better solution for more than ~5 lines of code is to submit your code to the repository so course staff can see all of the necessary files and debug from that, then post a private question with your NetID and a description of your error/bug.


Is there a curve?

Individual MPs, labs, and Exams are not curved. The total scores for the course may be curved (before any extra credit is calculated). The grade cutoffs will never be any higher than posted, however they may be lowered. Score distributions for CS 225 remain fairly consistent over semesters, and these cutoffs are already set reasonably. They almost certainly will not be lowered significantly.

Something was graded incorrectly on my exam.

If you believe there was an error in a problem on your exam, just post your concerns privately on piazza. We’ll take a look, and let you know.