Who, Where, When
| Instructor | Asa Ben-Hur Office: 448 Office Hours: Monday 3-4pm; Thursday 11-12; and by appt. |
| TA | Zhisheng Xu <xuzs9298@gmail.com> Office Hours: Thursday 3-5pm; Friday 1-2pm, 4-5pm |
| Lecture | MWF 2pm at Behavioral Sciences 107 |
Course objectives
- Practice the implementation of sophisticated algorithms.
- Learn a variety of algorithmic techniques.
- Expose students to theoretical concepts in algorithm design and analysis: proving algorithm correctness and evaluation of algorithm efficiency.
Course Outline
- Introduction: How to formulate a problem, algorithm definitions, what it means for an algorithm to be correct, proof of algorithm correctness, with introductory examples.
- Analysis of algorithm efficiency: asymptotic growth rates, and some common bounds (constant, logarithmic, linear, polynomial, exponential).
- Graph Algorithms. Implementation of a dynamic graph abstract data type that supports efficient insertion and deletion of vertices, lookup of vertex in-degrees and out-degrees, iterating over in-neighbors and out-neighbors. Implementation of graph algorithms like topological sort.
- Divide-and-conquer algorithms.
- Greedy Algorithms
- Dynamic programming
- NP-completeness
- Local search algorithms
Textbook:
J. Kleinberg and E. Tardos, Algorithm Design, First Edition, Addison-Wesley, (2005)
Important Dates
Midterm: Oct 5th
W day: Oct 15th
Final Exam: Dec 13 11:50am-1:50pm
All exams are in the same room as the lecture.
Grading:
| Assignments | 40% | Programing (25%) and written (15%) |
| Quizzes | 10% | Typically given every other week. No makeups are possible, but one quiz grade will be dropped. |
| Midterm | 20% | |
| Final Exam | 30% | Comprehensive |
Given your assignment, quiz, and exam grades you can calculate your final grade: there will be NO curve.
The letter grades will be calculated using the standard breakpoints:
| Letter Grade | Points |
|---|---|
| A | ≥90 |
| B | ≥80 |
| C | ≥70 |
| D | ≥60 |
| F | <60 |
| I won’t cut higher than this, but I may cut lower. | |
Assignments are graded by the TA. If you don’t like your grade, talk with him first, then to your instructor if you still disagree.
We will try our best to return assignments within 5 working days after the end of the late period. Exams will be returned within 5 working days of when they are taken. Grades will be posted on RamCT. Written assignments and exams will be returned in lecture.
Late and Makeup Policy
Midterm and Finals: Make-up exams are only given in extraordinary circumstances (e.g., illness, death of family member). Students must consult with the instructor as soon as possible, preferably before the exam. Course examination dates are listed in the syllabus; be aware of them and plan accordingly.
No make-ups will be given for missed quizzes.
Programming assignments are to be submitted electronically using the checkin program. Always check the assignment page for due dates. Late assignments submitted within 48 hours of the time required (or otherwise specified) will receive a 20% late penalty. Electronic submission is closed 48 hours after assignments are due (or as otherwise specified); students not having submitted programs receive an automatic zero on the assignment.
Written assignments are to be submitted in class. These may be handwritten, but must be legible. The instructors and TAs reserve the right to decide whether or not a paper is legible. We do not accept late written assignments.
Professional Conduct
All students are expected to conduct themselves professionally. We assume you are familiar with the policies in the department's student information sheet and code of conduct, and CSU's honor pledge. We expect students to respect these. In particular:
You MAY discuss assignments but the work you turn in must be your own.
We work to maintain an environment supportive of learning in the classroom and laboratory. Towards this end, we require that you be courteous to and respectful of your fellow participants (i.e., classmates, instructors, TAs and tutors). In particular:
- Please turn off the ring on your cell phone. If you are expecting an emergency call, sit near the door and slide out discretely to take it.
- If you plan to use a laptop or smart phone during class, please sit at the back of the classroom and turn off any sound from the machine. The tap-tap of the keyboard and the images showing on a screen can be distracting to those sitting around you. Also, be aware if you IM during class, that giggles, snorts or other reactions to what you are reading can be heard by the class and instructors and may be completely inappropriate with what is going on in the classroom.
- Laptops and other personal computing devices must be shut during exams and quizzes.
