CS 310
Computer Science III
Spring 2009

Prof. Richard Carver
email: rcarver@gmu.edu
Office: 343 Science & Tech II
Office Hours: Tuesday, Thursday before class and 1:00-1:30pm, and by appointment
Phone: (703) 993-1550
The course website is http://cs.gmu.edu/~rcarver/cs310

TAs and UTA

Fei Qu Office Hours: T 4-6pm and W 10-12am, ST2 room 365.
Ajay Natarajan Office Hours: T 4-6pm and W 2-4pm, ST2 room 365.
Di Wen Office Hours: M,W,F 2:30 to 5 pm, ST2 room 365.


The text is Data Structures and Algorithm Analysis in Java by Mark Allen Weiss, 2nd ed., Addison Wesley, 2007.


The prerequisite for this course is C or better in CS 211. I will assume that you have developed a significant degree of skill in programming (program organization, coding, documenting, testing and debugging) -- you will develop yet more this semester. I will also assume that you are acquainted with basic complexity analysis ("big O") and are able to build abstract data types using Java classes.

Course Description

The purpose of the course is two-fold. We will continue the study of data structures from CS 211 and we will learn how to approach larger and more challenging programming projects than those you did in CS 211. Programming is a significant part of this course and you should expect to spend a good deal of time on the course projects.

Course Outcomes


This list is subject to change as interest evolves.


There will be several programming assignments. Programming assignments will be posted on the course website.

External documentation will be written and handed in with your source code. You can only turn in a program once. No revisions or additions can be made to your program after it has been submitted. Late programs will be accepted with a 10% per day late penalty. You are responsible for keeping backups of your work ("my disk crashed" and "my roommate ate my program" are not reasons for late submissions).

Honor Code

You may discuss the programming projects with other students (this is encouraged) but you must do and submit your own work. No joint work will be accepted.

Read the CS Department honor code: http://cs.gmu.edu/wiki/pmwiki.php/HonorCode/CSHonorCodePolicies and the University honor code: http://honorcode.gmu.edu. You are bound by these honor codes. Any submitted work which shows too much commonality with others' work to be completely original, or any plagiarized work, will receive a grade of 0. Any code which is presented in class or provided to you as part of the project may be included in your programs.


There will be a midterm exam and a final. There will be no makeups on exams except under exceptional circumstances (as judged by me), and any such makeup must be arranged in advanced. Grades will computed from a weighted average computed with the following weights: