Skip to main content
Course number:
CIS 121—Fall 2015
Chris Callison-Burch
Teaching Assistants:
Course Staff
Discussion Forum:
Time and place:
Lectures are Tuesdays and Thursdays at 10:30 in Towne 100
CIS 120 and CIS 160
The lectures and readings will closely follow Algorithms by Sedgewick and Wayne, 4th edition. The textbook has its own web site with some free materials, but you should also buy the full textbook.
The grading for the course will consist of 55% for homework assignments and the final project, 10% each for 2 midterm exams, 20% for the final, and 5% for recitation attendance. Recitation attendance is mandatory.
Late day policy:
Each student has two free, no-strings-attached late days that they may use on programming and written homeworks. At the end of the semester, we will arrange your late day usage so that you will receive the optimal homework average. If you are out of late days, then you will incur a 25% penalty on the homework for each day late. One “day” here is anywhere between 1 second and 24 hours after the homework deadline, and a second “day” is between 24 hours and 48 hours after the homework deadline. Late written homeworks can be turned in to Britton Carnevali in Levine 308. The final project does not have the same late policy; it has its own late policy, which will be announced with its release.
Collaboration policy for written homeworks:
You are allowed to discuss solutions to problems in groups of three, documenting who you discussed with at the top of your assignment. You are allowed to ask anyone for LaTeX help (for instance, “How do I center a stack of equations?”). You are not allowed to write up the solutions together. You must do that by yourself.
Collaboration policy for programming homeworks:
You are allowed to discuss low-level issues like the meaning of Java constructs, or how to use the computing environment. You are allowed to discuss high-level questions such as what the instructor/lab TA said, the content of the textbook or other general resources. You not allowed to…

Any violation of the collaboration policy will be dealt with severely.

Regrade policy for programming homeworks:
We allow you to indicate small errors (defined below) that you have made, which, when fixed, will allow your programs to pass autograder tests. You will need to send an email, by the regrade deadline, which is one week after you receive your scores, to This email must identify exactly the error in your code and include a precise description of the fix that needs to be made. A small error is a problem whose fix should not require changing more than 1–2 lines of code. A TA will make the change and rerun the autograder tests. Your new score will be the maximum of your original score and 80% of your regraded score.
Regrade policy for written homeworks and exams:
Please fill out the regrade request form and bring it to the course administrator, Britton Carnevali, in Levin 310, together with the assignment or exam by the regrade deadline. Regrades are due one week after the assignment or exam has been returned with your score.