Fall 2005

**Name:**Prof. Cliff Stein**Office:**340 Mudd Hall**Phone:**854-5238**E-mail:**cliff@ieor.columbia.edu**Office Hours:**M 2:30-4:00, Th 2:00-3:00 and by appointment

**Name:**Justin Cranshaw**Office:**CS-TA room, 122a Mudd**E-mail:**jbc2111@columbia.edu**Office Hours:**M 12-1, T 5:45-7:45 and by appointment

**Meets**: MW 1:10-2:25**Room**: 535 Mudd

- COMS 3139 and COMS 3203 or equivalents.

**Required**:*Introduction to Algorithms*, Thomas Cormen, Charles Leiserson, Ronald Rivest, and Clifford Stein, 2nd edition (5th printing is the latest, but any printing of the 2nd edition is fine)

- visiting the professor or TAs in their office hours
- emailing the professors or TAs
- posting to the course bulletin board on courseworks.

**Start early:**Difficult problems are not typically solved in one sitting. Start early and let the ideas come to you over the course of a few days.**Be rigorous:**Each problem has a (sometimes unwritten) requirement that you*prove*your algorithm correct and*analyze*its running time. To obtain full credit for a problem, it is necessary to fulfill this requirement.**Be concise:**Express your algorithms at the proper level of detail. Give enough details to clearly present your solution, but not so many that the main ideas are obscured. English is the best way to express an algorithm; revert to pseudocode only if necessary.

- We will employ a somewhat unusual grading scheme. Each homework
assignment will have
*n*problems, and each problem will be worth 10 points. You will be required to attempt any*m*problems. (The parameters*n*and*m*will vary from assignment to assignment.) These*m*problems will be graded in the usual manner: you will receive full or partial credit out of 10 points. You may also choose to attempt the remaining*n-m*problems. These problems will be graded as follows. Say that you would have received a score of*j*points if this problem had been graded normally. If*j*is less than 6, then you will receive zero out of zero points, as if you had not attempted the problem. Otherwise, you will receive 2*j*out of 2*j*points. Note that attempting extra problems can only help you. Your grade on an assignment will be reported by two numbers: the points you obtain and the points you effectively attempt. Your homework grade at the end of the term will be calculated as the sum of the points you obtained divided by the sum of the points you effectively attempted. - The purpose of this policy is threefold:
- It is designed so as not to penalize you for skipping some problems.
- It is designed to encourage you to attempt all of the problems.
- It is designed specifically to discourage you from writing up long answers which you suspect are incorrect, in the hopes of picking up a point or two.

- All work submitted for credit must be your own.
- You may discuss the homework problems with your classmates,
the teaching assistant(s), and Professor Stein. For each problem,
you must acknowledge
the people with whom you discussed your work, and
*you must independently write up your own solutions.*Any written sources used (apart from the text) must also be acknowledged; however, you may*not*consult any solutions from previous years' assignments whether they are student or faculty generated. - If you do choose to copy another student's work, or to copy from some other source, please state this in writing on your homework assignment.
- Please ask if you have any questions about this policy.
*Violations will be treated harshly. This means that if you violate the policy, even once, your grade on homework for the entire semester will be 0. Note that allowing someone else to copy your solution is just as serious as copying someone else's solution.*

- There will be one take-home midterm, and an in-class final exam. The exams must be done entirely by yourselves. The midterm may be followed up by an oral defense of the work.

**Homeworks**: 30%**Midterm**: 35%**Final**: 35%