CS 4349.003.19F — About this Course


CS 4349 is a course about the design and analysis of computer algorithms. By the end of the course, we expect that you will have The official course syllabus can be found here. All policies from both the syllabus and website apply, but if there is a contradiction, then the syllabus takes preference (but do email Kyle so he can fix the issue!).

Announcements and updates to the schedule including recommended reading will take place on the main course webpage. We'll also make announcements on eLearning.

Additional details on the course and its policies are given below. Do make yourself familiar with them to avoid confusion later. And be sure to carefully read the writing policies and advice so we may fairly grade you for the work you do for the homework and exams.

Welcome! We hope you find this course both interesting and useful.

Reading

Most of the lectures will be based on the excellent lecture-notes-turned-textbook of Jeff Erickson available here. The standard "required" textbook for CS 4349 sections is Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein: Introduction to Algorithms, 3rd Edition. MIT Press 2009, often referred to as CLRS. I will also pull examples and proofs out of the textbook, but I will not follow it too closely. That said, the more you read outside of lecture, the more examples and details you will see, and hopefully your reading will lead to a deeper understanding of the class material. I will always write out homework problems instead of just pointing you to the textbook.

Grading

Your grade will be determined by a combination of homework, two midterm exams, and a cumulative final exam. Your grade will be determined by a weighted sum of these items as shown below. Grade cutoffs will be determined by looking at the distribution of scores in the class, and I expect the cutoffs to be lower than the typical 90, 80, 70, 60… scale. However, there is no fixed curve. If everybody performs well, then everybody can get top grades. Students are highly encouraged to talk to Kyle to get a better idea of where they stand before considering dropping the course.

Homework

I will release around ten homework assignments throughout the semester. They will "generally" be released weekly and be due on eLearning immediately before class on the day they are due. Late submissions turned in within the first 24 hours after the deadline will have their scores lowered by 10% the maximum score possible for the assignment. Late submissions turned in more than 24 but less than 48 hours after the deadline will have their scores lowered an additional 10% (so 20% total). No points will be awarded for even later submission, and deductions cannot lead to a negative final score. We will drop one of your homework assignment scores, whichever is lowest. In the case of an unusual circumstance such as a documented extreme illness or injury, contact Kyle as soon as possible to arrange accommodations.

Collaboration and submission

Homework assignments should be done individually and turned in via eLearning. However, we highly encourage you to work within small groups to better learn the material and succeed at solving the problems. You must cite your collaborators when working in groups. A simple list of names will suffice. See below for more details on citing other sources.

Clearly write your name, the homework number, and the problem number at the top of every page. For example, you might write "Kyle Fox, HW0 #2". In addition, start each numbered homework problem on a new page so we don't miss any problems.

We hope you will put in an honest effort to solve each homework problem without having to rely on resources outside of the course material. However, we also want to give you the opportunity to discuss class material with other students and access other kinds of outside help as needed. If you use a solution from an outside source, such as a web page, a journal paper, a different algorithms textbook, or your mom, or if choose to work with other students in the class, then you must rewrite the solution in your own words, and you must properly cite your source. Do not forgot to rewrite in your own words; the goal here is not to teach us what you found outside the course material, but to convince us that you actually understand it yourself. You may assume we have knowledge of the official course material or prerequisites without citation, but nothing else. Failure to cite other sources or failure to provide solutions in your own words, even if quoting a source, is considered an act of academic dishonesty, and we will report suspected violations to the Office of Community Standards and Conduct.

A correct solution based on a cited source and written in your words is still worth full credit. When in doubt, cite your source! (That said, now would be a good time to mention that many of these course policies and the writing advice given here are taken from algorithms course websites by Jeff Erickson and Erin Wolf Chambers.)

There are several websites out there that offer solutions to some of the problems we will post. Be very careful with these sites. The solutions are sometimes incorrect, and in cases where they are correct, they don't offer a full or understandable justification for what they are doing. We will put extra emphasis on justifying correctness during scoring in cases where you rely on an outside source. If you find yourself frequently relying on outside sources, then you may not be putting enough effort into learning algorithm design yourself, and your performance on the exams and outside the class will suffer.

Regrades

Requests for regrades should be done within one week of an assignment or exam being returned. Please be considerate of whether your request is legitimate. All regrade requests must include an explanation of why you feel you were graded incorrectly. Regrade means regrade, so your score may actually decrease.

Extra credit

We may occasionally offer opportunities to gain extra credit by solving additional challenging problems or doing other relevant work. However, these opportunities (if any) will be rare, and you should not depend upon them to get the grade you desire. The final grade cutoffs will be determined before taking extra credit into account, so these opportunities will only help and never hinder students. The citation policy does not apply here. You must do extra credit work on your own.

Additional Policies

Exams

If you know about a conflict with the scheduled exam dates, please inform Kyle at least one week in advance so we can set a conflict exam time. If you have or feel you may have a disability that requires a reasonable accommodation in how I structure or administer an exam, please consult with and get written documentation from the Office of Student AccessAbility (OSA) at least one week in advance of the exam.

Exams are closed book, and no other sources, collaboration, or cheat sheets are allowed.

Attendance

It is the Computer Science Department’s policy that absence in three consecutive lectures will result in the course grade being lowered by one letter and absence in four consecutive lectures will automatically result in a failing grade (F) in the course.