Analysis of Algorithms (CSCI-261-02), Fall 2015-16
Instructor: Ivona Bezakova, email: email@example.com (please replace my_initials with ib)
Class meets: Tu/Th 2:00-3:15, room (GOL)-3435
Office hours (tentative), when classes are in session:
Monday 10:00-11:50am, Tuesday 11-11:50am, Thursday 11-11:50am, office (GOL)-3645
Tutoring center: schedule, staffed by students who took (and performed well in) theory-related courses in recent years
0. Homework and Reading
For information about topics covered in class,
reading and homework assignments, follow this
MATH-190 (Discrete Mathematics for Computing) and CSCI-243 (The Mechanics of Programming)
or equivalent courses
Algorithm Design by Jon Kleinberg and Eva Tardos.
The assignments webpage (that will contain slides from the lectures):
Introduction to Algorithms by Cormen, Leiserson, Rivest, and Stein, 3rd ed. is a great text for further reading (optional).
3. Course description and intended learning outcomes.
This course provides an introduction to the design and analysis of algorithms.
It covers a variety of classical algorithms and data structures and their complexity
and will equip students with the intellectual tools to design, analyze, implement, and evaluate their own algorithms.
Intended learning outcomes:
4. Grading Policy
Students will be able to explain basic concepts related to the design and analysis of algorithms.
Students will be able to describe classical algorithms and their complexity.
Students will be able to design and analyze their own algorithms.
Students will be able to implement, experiment with, compare, and report on various algorithmic solutions to the same problem.
Grading scale: 88%-100%: A grades (91%-100% A, 88%-91% A-), 77%-88%: B grades (85%-88% B+, 80%-85% B, 77%-80% B-),
66%-77%: C grades (74%-77% C+, 69%-74% C, 66%-69% C-),
55%-66%: D, 0%-55%: F.
Final exam, 20%.
More information about the final exam will appear on the final exam webpage in the last week of the semester (about a week before the exam).
Midterm exams, 20%+20%.
There will be two midterm exams: the first will be on Tuesday, September 29, and the second is tentatively scheduled for Thursday, November 5,
during class time. More information about each midterm exam will appear on the
midterm 1 webpage and the midterm 2 webpage about a week before the respective midterm takes place.
If your score on the final is better than the average of your midterm scores, the overall exam score will be computed as follows:
25% for the final exam, 20% for the higher-score midterm exam, and 15% for the lower-score midterm exam.
There will a short test-the-submission-system homework that contributes 1% towards your final grade; this homework is due September 2.
There will be six regular (almost-)bi-weekly homeworks, due Wednesday, 11:59pm; the first regular homework will be due on September 9.
Homework assignments will be posted on the assignments webpage about two weeks before they are due.
The lowest homework grade will be dropped and the remaining five grades contribute evenly towards 39% your final grade.
You may choose to do the homeworks individually or in pairs.
If you are working as a pair, both partners have to solve the homeworks together
and both partners are responsible for the final submission (both partners
need to be able to explain every part of the submission). In particular, you
are not allowed to divide the problems and solve only some of them while
your partner solves the rest.
Zeros for cheating will not be dropped.
However, your overall grade cannot be more than one letter better than your
average exam grade. Moreover, average exam grade F results in failing the
6. Technical issues
Divide-and-conquer algorithms and recurrences
- Minimum spanning trees
- Single source shortest path
- All pairs shortest path
- Network flow
The P versus NP problem and NP-completeness
Other topics such as linear programming, overview of heuristics and approximation,
and randomized algorithms.
Please let me know about any other topics you would like to see discussed in class.
You are free to discuss the current homeworks with your classmates, students in the other sections, the instructor, the tutors, and anybody else whom you make listen :). It is not ok to be told what the solution is - you have to be an active participant in the discussion and arrive at the solution on your own. After such discussions, you
have to discard all notes, cell phone pictures, and other materials you created during these discussions before you write/code up
the solutions on your own (or with your partner, if working as a pair).
Looking up the solutions online or in the literature other than the
course book is not permitted.
All homeworks are due (almost-)bi-weekly on Wednesdays, 11:59pm. No late submissions will be accepted.
The homework assignments will be usually posted on the assignments webpage a couple of weeks before their due date.
Sometimes a part of the homework will be posted two weeks before the due date and another part a week before the due date.
Handing in your homeworks:
Coding part of the homework has to be submitted via the try system.
It has to follow the coding requirements.
Specific submission instructions are included with each homework description.
Non-coding part may be
- uploaded to MyCourses by the due date as a combination of pdf, txt, and jpg files -
make sure that your name and the problem number appears when one opens the file (not just as a part of the file name), or
- handed in class or during office hours on Tuesday before the due date.
- I will stop answering homework-related questions 24 hours before the homework's due date.
Exams are closed book, closed notes. You may prepare one letter-size
hand-written "summary sheet" (no photocopies).
- Homework or exam grade can be disputed within one week
after the graded work is handed back. Dispute the grade with the instructor,
not the grader. Your grades will be posted on MyCourses.
Exams can not be made up except for real emergencies in which case proper documentation (like a doctor's note) will be required. If at all possible, you should contact me prior to the exam. Oversleeping, cars that don't start etc. do not constitute a valid excuse.
- Hopefully there is no need to link to the departmental
on academic honesty. In the unfortunate event when cheating
earns a 0 score on a homework, the lowest non-cheating score
will be dropped. Also note that second offenses result in an F in the course.