Fall 2011: Program Design and Data Structures - INFS 519

Lecturer
Matthew Revelle, mrevell1@gmu.edu, Engineering Building Rm 5323, by appointment
TA
TBD
Prerequisites
SWE 510. Students are expected to have experience with basic program design, coding, and debugging. Undergraduate courses or equivalent knowledge in structured programming in a high-level language.
Location and Time
Robinson Hall A247, T 7:20-10:00pm
Textbook
Michael Main, Data Structures & Other Objects Using JAVA, 3rd ed., Addison-Wesley, 2006.
Course Web Page
http://cs.gmu.edu/~mrevell1/infs519-f11/index.html

General Description

Study of the fundamentals of data structures and algorithms applied in programming solutions to application problems. The course stresses programming in a modern high-level language. Laboratory required.

Topics

  • Object-oriented & functional design
  • Generic programming
  • Running time analysis
  • Recursion
  • Linked lists
  • Stacks and queues
  • Sorting
  • Hashing
  • Trees and heaps
  • Binary trees and others
  • Graphs
  • Advanced topics: functional data structures, tries, and others based on class interest

Coursework

There will be several programming and written assignments. Programming assignments will involve writing working programs in Java that solve assigned problems. Written assignments that involve reasoning about data structures and algorithms may be given.

All assignments will be posted on the course website.

You are encouraged to discuss the course material with other students, but you must do and submit your own work. Any deviation will be considered a violation of the GMU honor code.

CS Department honor code
http://cs.gmu.edu/wiki/pmwiki.php/HonorCode/CSHonorCodePolicies
University honor code
http://honorcode.gmu.edu/

Late programs will be accepted with a 10 points per day late penalty.

You are responsible for keeping backups of your assignments.

There will be two examinations, a midterm and a final.

Grading

Programs
30%
Midterm
30%
Final
30%
Problems
10%

HTML generated by org-mode 6.35i in emacs 23