COURSE ID: V22.0310.003, Basic Algorithms, Fall 1999
COURSE LINKS: Please bookmark our Course Webpage.
You can also find this with links from the CS department page.
CLASS MAILING LIST: You must join the class mailing list immediately. Click here for instructions.
CLASSES: (1) Lecture: Mon and Wed, 9:55--11:10, in WWH 109
(2) Recitation: Tue, 11:55-1:10, in WWH 109
TEACHER: Professor Chee Yap, Office: WWH 416,
Phone: (212)998-3115, Email:
TEACHING ASSISTANT: Archisman Rudra, (a TA's website will be forthcoming)
715 B'way, Room 1009, Phone: 998-3353
NOTE: Rudra's office hour is held in WWH, Room 401.
OFFICE HOURS: Yap: Monday 2:35--3:35, Tuesday 2:00-3:00 (NEW!), and by appointment.
Rudra: Wednesday 1:00--3:00 and by appointment (in WWH Room 401 !)
PREREQUISITE: A high level programming language (not necessarily Java)
Data structures course (V22.0102)
TEXTBOOK: A Practical Introduction to Data Structures and Algorithm Analysis (Java Edition), by Clifford A. Shaffer, Prentice-Hall (1998)
EXAMS: Short Quizzes may be in class.
Midterm: Mon Oct 26, in class.
Final Exam: Wed, Dec 15, 10:00 to 11:50, In Main 405 and 411.
HOMEWORK: No late homework. About 8 homeworks (including programming assignments).
We recommend that you have at least two 3.5" high density diskettes, keeping two copies of your work at all times. You are responsible for keeping an extra copy of your submitted homework.
PROGRAMMING: Java language (we will get you gently up to speed)
COURSE ACCOUNT: Unix is the official operating system. Although you may be able to do your programming without a unix account, we highly recommend that you apply for one.
GRADE: curved, 40% homework + quizzes, 20% midterm, 40% final.
ACADEMIC INTEGRITY: This must be taken seriously. All assignments that are handed in for grading must represent your own work. If you use any programs or solutions from sources in the open literature, you should give full attribution. You should never copy work of other students, nor let your work be copied by others. However, we do encourage you to discuss problems and material with other students in the class. But all writeup must be your own.


The course introduces you to the beginnings of analysis of algorithms. You will learn some efficient data-structures and algorithms, and good solutions to fundamental problems such as sorting and basic graph algorithms. The pace is brisk; expect to spend time outside of lectures to keep up with the work. Attendence at lectures and recitations is an essential part of the course.