An undergraduate course on algorithms is a prerequisite for this class. At UMBC, the undergraduate algorithms course (CMSC 441) uses the same textbook and typically covers Chapters 1-4, Appendix A (Big-O notation, recurrences and summations), Chapters 6-9 (Heapsort, Quicksort, "linear-time" sorts and linear-time median algorithms), Chapter 15 (dynamic programming), Chapter 16 (greedy algorithms) and Chapters 22-25 (graph search algorithms, minimum spanning trees and shortest path algorithms). In addition hash tables and balanced binary trees are covered in CMSC 341 Data Structures. There will be minimal overlap in the material covered in the CMSC 441 and CMSC 641. If your are not familiar with some of these topics, you must have enough preparation to review the material on your own.
Your performance in this course will be based upon 13 homework assignments, 5 quizzes and 1 final exam. Each homework assignment is worth 3% of your grade, each quiz 7% and the final exam 26%. If a homework assignment or quiz is canceled and not made up (e.g., because UMBC is closed for snow), the proportion of your grade from homework, quizzes and the final exam will remain the same. That is, homework will still count for 39% of your grade and quizzes 35% of your grade (each homework or quiz will have greater weight).
Quizzes will take place in the classroom during the last 30 minutes of the class period. Each quiz will have a single question on a pre-announced topic. As a rule, questions on the quizzes (and on the final exam) will be easier than the homework questions since you are expected to complete the questions in a limited time frame.
You are encouraged to discuss the homework problems with your classmates. However, you must write up your solutions on your own — i.e., without looking at other people's homework, other people's notes, your notes of other people's homework, your notes of other people's notes, ... The UMBC academic integrity policy is available at: www.umbc.edu/provost/integrity/students.html .
In general, homework must be submitted when they are due. This allows for timely discussion of the solutions and for the graded assignments to be returned before the quizzes. If you have an excusable absence (e.g., travel for work, conference attendance, medical illness), please make arrangements with the instructor as early as possible.