Time: TuTh 10:00 - 11:30        Place: MAASS 328      Last update: 99.8.20

This course is concerned with problem solving using computers. We study how to design, analyze and implement various computational techniques to solve a variety of computational problems. Each problem is chosen to illustrate a particular design technique, and together they form a broad cross-section of today's program development tools. Efficient data structures are introduced where they contribute to the efficient solution of a programming problem. The course will cover Parts II and III of the required text, with additional topics selected from Part IV, as time permits. This is not a course on programming, and although the text is based on Java, we will not be studying advanced features of this language. It is assumed all students have completed 308-202A and have had programming experience in Java. All students should review Part I, A tour of Java, during the first three weeks of the semester.

There will be a final exam(50%), midterm(20%), and homework(30%). Some of the homework will involve programming and some will involve analytical work.

Required Text: Data Structures & Problem Solving Using Java, M. Weiss, Addison-Wesley

Supplementary Text on Reserve at PSENG Library: Data Structures and Other Objects Using Java, M. Main, Addison Wesley


Final Exam: tba

Midterm: October 19, in class (to be confirmed)

Homework: Bi-weekly (in principle) Note. The homework should be deposited in the box marked 203 outside MC100N. The box will be emptied at 5:00 pm each day. Penalty: -10% per day, including weekends.

Professor David Avis
McConnell 308 
Office Hours: Tu,Th 3:30-4:30


Teaching Assistant: tba


Website Info: click on "Course Material" and "203"