Instructor:

Julián Mestre
Office: AVW 4103
E-mail: jmestre@cs.umd.edu
Office hours: Monday, Wednesday and Friday 10:50am - 12:00.

Class Time:

Monday - Friday 9:30 - 10:50am, Room: CSI 1122.

Teaching Assistant:

Azarakhsh Malekian.
Office hours will be held in AVW 4103.
E-mail: malekian@cs.umd.edu
Office hours: Tuesday and Thursday 11:00am - 1:00pm.

Course Overview:

This course presents the fundamental techniques for designing efficient computer algorithms, proving their correctness, and analyzing their complexity. General topics include graph algorithms, basic design paradigms (such as divide-and-conquer, dynamic programming and greedy algorithms), network flow and NP-completeness.

Text:

Algorithm Design by Jon Kleinberg and Éva Tardos

Prerequisites:

CMSC 351. Each student is expected to know the basic concepts of programming (e.g. loops, pointers, recursion), discrete mathematics (proof by induction, sets, permutations, probability), simple data structures (lists, stacks, queues, trees, heaps), basic calculus (logarithms, differentiation, integration). If there is any material that seems unfamiliar, please see the instructor or the teaching assistant as soon as possible to head off any problems.

Course Work:

Course work will consist of six homework assignments, one project, four quizes and two exams (a midterm and a comprehensive final). Every week there will be a homework due on Wednesday, and a quiz/exam on Friday. The midterm date will be on August 4; the final will be on the last day of class, Friday, August 25.

You have to turn your homework in at the beginning of class on the due date. Since homework solutions may be discussed in class the day the homework is due no late homework will be accepted. If you cannot come to class the day the homework is due you must turn in your homework to the TA before the due date.

All homework assignments are to be done independently, with no help from the web or other sources. If you have questions, please talk to the TA or the instructor. Assignments are to be written up neatly; poorly written homework will not be graded.

Grading:

Final grades will be based on homework assignments, the project, the quizes, the midterm exam, and the comprehensive final exam. Tentative weights for these will be 20% for the homework, 10% for the project, 20% for the quizzes, 20% for the midterm and 30% for the final. Note that these weights are subject to change.

Syllabus:

The topics and order listed below are tentative and subject to change.

Additional Information

Students claiming an excused absence must apply in writing and furnish documentary support (such as from a health care professional who treated the student) for any assertion that the absence qualifies as an excused absence. The support should explicitly indicate the dates or times the student was incapacitated due to illness. Self-documentation of illness is not itself sufficient support to excuse the absence. The instructor is not under obligation to offer a substitute assignment or to give a student a make-up assessment unless the failure to perform was due to an excused absence. An excused absence for an individual typically does not translate into an extension for team deliverables on a project.

Any student eligible for and requesting reasonable academic accommodations due to a disability is requested to provide to the instructor a letter of accommodation from the Office of Disability Support Services (DSS) within the first two weeks of the semester.

The University of Maryland, College Park has a nationally recognized Code of Academic Integrity, administered by the Student Honor Council. This Code sets standards for academic integrity at Maryland for all undergraduate and graduate students. As a student you are responsible for upholding these standards for this course. It is very important for you to be aware of the consequences of cheating, fabrication, facilitation, and plagiarism.

Web Accessibility