layout | title | active_tab |
---|---|---|
default |
CIS 121—Fall 2015—Data Structures and Algorithms |
main-page |
Course number: : CIS 121---Fall 2015
Instructor: : Chris Callison-Burch
Teaching Assistants: : Course Staff
Discussion Forum: : Piazza
Time and place: : Lectures are Tuesdays and Thursdays at 10:30 in Towne 100
Prerequisites: : CIS 120 and CIS 160
Textbook: : 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.
Grading: : 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...
- Discuss issues directly pertaining to the homework questions or their solutions.
- See another students homework solutions, or
- Show your solutions to another student
- This includes asking a classmate to debug your code and agreeing to debug a classmate’s code. If you do this during office hours, know that the TAs are required to report your names to the instructor.
- Share any code except the code that is being made available by us on
the course website to be used specifically with your solutions
- Occasionally, a small snippet of code from the textbook may help your work. You can use such a snippet with attribution, i.e., provided you add a comment in which you make clear you copied it from the textbook.
- You can NOT use snippets of code from the Internet (e.g., StackOverflow.com and similar).
- Post code on, or use code from, public fora (e.g., GitHub, StackOverflow)
- Look at other people’s information
- If you find a terminal on which somebody else has logged in and forgot to log out, you must log them out
- When somebody else is typing a password in front of you must look out the window, or at your shoes, or at the picture of Brad Pitt or Angelina Jolie that you carry on your keychain.
- Use any code downloaded from the Internet or sent to you by email, Facebook, text, Twitter, or even scribbled notes passed from hand to hand :)
- Share the material that we post for this course with anybody who is
not a registered student in this course or a staff member.
- If you find any such material already posted somewhere else you must inform the course instructor immediately. Same if you are contacted by people who offer to solve your homework for money, or who knows what else. Use your common sense and ask any member of the staff if you are not sure about a resource you are considering.
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 cis121-15fa-staff@googlegroups.com. 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.