Computer Science 140 and Mathematics 168
Algorithms
Syllabus, Fall 2002

Professor: Belinda Thom (or "B" for short)
Office: Olin 1241
Phone: x79662
E-mail: bthom@cs.hmc.edu
Office Hours: TBD
Course Time and Location: Tuesdays and Thursdays, 2:45-4 PM in TG 201
Course Assistants: TBD
Course Homepage: www.cs.hmc.edu/courses/2003/spring/cs140


What Is This Course About?

This course will introduce you to fundamental algorithm design and analysis techniques. In addition to learning about a number of important classical algorithms, you will also gain experience designing new and/or extending existing algorithms. This experience will include analyzing various algorithms' computational efficiency and applying them to a variety of interesting real-world computational problems.

Is This Course for You?

The short answer is Yes! -- as long as you've met a few basic requirements. Much of our time will be spent carefully analyzing algorithms using mathematical induction, recurrence relations, and summation techniques. Hence, Math 55 is a non-negotiable prerequisite. On some homeworks there will also be short programming assignments, which may be solved in a high-level language of your choice (i.e., C, C++, Java, Pascal, SML). Thus, CS 60 and CS 70 (if registered as CS 140) or Math 131 (if registered as Math 168) are also required.

Text

Introduction to Algorithms, 2nd Edition by T. Cormen, C. Leiserson, R. Rivest, and C. Stein

Attendance

On-time attendance in every class is absolutely required in order to pass the course. If you are sick or have a special reason for missing class, please send me email before the class that you will miss. Otherwise, you are expected to be in class. Please make sure to arrive on-time as a courtesy to the instructor and your classmates.

Assignments

There will be two assignments each week. On Tuesdays, you will receive a short assignment typically comprising 2-3 problems and worth approximately 20-35 points. This assignment is due on Thursday at the beginning of class. On Thursdays, you will receive a longer assignment, typically comprising 5-6 problems, worth approximately 65-80 points. This assignment is due on the following Tuesday at the beginning of class. Late homeworks will not be accepted unless you have made a special arrangement will me in advance.

While two-homeworks per-week might sound like a lot of work -- and some do require a lot of work -- this policy is for your benefit. These assignments force you to keep up with the important underlying details that accompany each lecture, which facilitates a much more engaged and rewarding experience. Given this strategy, I will try to return your graded homeworks to you within one week of their due date. Should you have an issue with the quality of a particular grade, please come talk to me, so that I can use your feedback will help improve the grading process.

Worksheets

In almost every class, you will be asked to solve a problem on a worksheet. These worksheets will be turned in at the end of class. If you turn in a worksheet which exhibits effort, you will receive full credit for it. Worksheets will not be returned but you can assume that you have received full credit unless I inform you otherwise.

Exams

There will be 3 exams in this course: two exams during the semester and a comprehensive final exam. Dates and details of the exams will be announced in class.

Grades

The components of the course are worth the following:
	Homework: 40 course points   
	Worksheets: 10 course points
	Two "Midterm" Exams: 25 course points
	Final Exam: 25 course points
Note: You must turn in all worksheets in order to receive the 10 points for this component (unless you miss class due to illness or a special circumstance). Since attendance is required, I expect that all students will receive their 10 worksheet points.

Collaboration Policy

Collaboration on homeworks is encouraged. This means that you may discuss approaches to solving a problem with anyone in the class. On each submitted homework, please indicate the names of all people with whom you discussed your solutions. Copying written solutions from any source (such as person, a text book, or a web page) is not allowed. There should be no collaboration on any exam. All parties, including off-campus students, are expected to follow the Harvney Mudd Honor code.

Section 2

If you are in my class, i.e., CS 140 Section 2, your attendance to my lectures is required. Similarly, you are to use my Office Hours. Finally, homework collaboration should be limited to your Section 2 classmates. This caveat is mentioned because Professor Hadas is teaching Section 1 and we have both agreed on this policy.

Aside: I am a great fan of Professor Hadas' class and would like to share this experience with you. Thus, my lectures will closely follow his. I am very grateful to him for the generous use of his slides. The contents of this document was also borrowed from him.

List of Topics