Your grade will be determined based on 4 graded programming assignments (60%) and a written exam (40%) at the end of the course. This grade scale will be used to convert the weighted scores to a final letter grade.
Besides the graded assignments, the course includes weekly assignments. Although not all assignments are graded, they are a core part of the class, and they should not be considered optional.
Attendance will not not be enforced. However, it is unlikely that you will pass the course without regular attendance. Presence sheets will be circulated during the course for informational purposes only.
The following basic rules apply the assignments:
- Assignments that are not handed in timely are graded 0/100. If you are ill, present a note from the doctor before the deadline.
- If your code does not compile due to errors in your code, your assignment gets the grade 0/100.
- Code is graded for correctness and style.
You are encouraged to help one another in this course. We all need a little help sometimes and you can also learn quite a bit from helping others. However, there is a point where getting help turns into plagiarism. The code that you submit, must be your own code. Cases of plagiarism will be reported to the faculty.
- Discuss a general approach to the solution of an assignment with your classmates.
- Get help debugging your code, but only AFTER you have really tried it yourself.
Things you are not allowed to do:
- Use someone else’s code (in whole or in part), this includes code fragments from web sites such as Stack Overflow.
- Give your solution to an assignment (in whole or in part) to a classmate.
- Get so much help on an assignment that you can no longer honestly call it your own.
In this class we will make heavy use of GitHub and GitHub classroom. Make sure to obtain a (free) GitHub account, and familiarize yourself with the system before you start working on your first assignment.
Assignments are only accepted through the GitHub repositories. No other form of submissions (e.g., email) are accepted.
You source files should start with the following header (Java)
/** * Course: Data Structures and Algorithms for CL III - WS1819 * Assignment: (Enter the assignment, "lab 1, exercise 1", for example) * Author: (Enter your full name here) * Description: (Enter a description of your program/class here) * * Honor Code: I pledge that this program represents my own work. */
The same information should be provided as the file/module docstring in Python assignments, and as comments at the beginning of the file for other file types that allow comments.
The following basic rules apply for the exams:
- If you are too ill to take an exam, you must inform instructors by e-mail, at least 60 minutes before the beginning of the exam. You also need to present an attest from your doctor before enrolling into the re-examination.
- A re-examination of the final exam is possible, if and only if you failed the course, but it is still possible to get a passing overall grade by obtaining a higher grade on the exam.