INFS 519
Program Design and Data Structures
Fall 2012

Dr. David Nordstrom
office: 5345 Nguyen Engineering Building
office hours: Monday 10:30 - 11:30, Tuesday 3:00 - 4:00, Wednesday 1:30 - 2:30 and by appointment
phone: (703) 993-1565

Class website

The class website is Teaching assistants, programming assignments, etc. will be posted there.


The textbook is Michael Main, Data Structures & Other Objects Using JAVA, 3rd ed., Addison-Wesley, 2006.

The course

The prerequisite for this course is SWE 510 or its equivalent. I will assume a "semester's worth" of programming experience in Java. You should understand basic programming in Java including program design, coding, and debugging techniques.

Topics for the course include:

  • Linked lists
  • Generic classes
  • Binary trees
  • Recursion
  • Stacks and queues
  • Sorting
  • Hashing
  • File organization
  • Whatever else appeals
  • Programs

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

    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:, and the University honor code: . 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.

    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 points per day late penalty. You are responsible for keeping backups of your work ("my disk crashed" and "I accidentally deleted my program" are not reasons for late submissions).


    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: