This course borrows, with permission, much of its material from the Fall offering of CSE331 taught by Dr. Atri Rudra. Please explore his course website for a wealth of resources that will help you study throughout the semester including recorded lectures, support pages, lecture notes, and more.
Your final grade will be determined by your homework and exam grades with the following weighting:
To earn an A in this course, your final course average must be above 90%. All other letter grades, including A-, will be determined by a curve. Since this class is smaller than most, this curve will take into account the performance of students in previous semesters on similar assignments.
There are 4 homework assignments in this course each with equal weighting (ie. 15% of your final grade is determined by each homework). These assignments will consist of a combination of designing algorithms, implementing your algorithms as programs (coding), proving the correctness of your algorithms, and analyzing the asymptotic runtime of your algorithms.
There will be a midterm and final exam in this course with the following weightings on your course average:
However, if it is to your benefit these weightings will be adjusted to the following on an individual basis:
This means that if you don't do well on the midterm you can still earn a high grade in the course if you show that you have learned the material before the final exam.
Instructor: Dr. Jesse Hartloff
Office: Davis 344
Office Hours: Wednesday 1:00 PM - 3:00 PM
There is no required textbook for this course. However, the material will closely follow this course textbook and it is strongly encouraged that you get a copy of the book if you want to do well in this course.
CSE Department Academic Integrity Policy:
UB Academic Integrity Policy:
All submitted work must be of your own creation and you must not share your submission with anyone else. If any submission is very similar to code that has been submitted by another student or can be found online, it is in violation of this courses academic integrity policy and all students will be penalized whether they were copying or sharing their code with other students so they can copy. If two submissions are similar beyond what is likely if the students worked independently, then both students are in violation of the academic integrity policy.
All violations will result in:
It is your responsibility to understand what constitutes an academic integrity violation. If you have any question whether something you are doing is a violation or not, ask for clarification before receiving an F in the course. I will not entertain excuses after you have been caught.
Examples of acceptable behavior:
Examples of unacceptable behavior:
If you plan on cheating, plan on taking this course again.