Syllabus for CSC 210
Data Structures
Fall 2006

Data structures such as lists, stacks, queues, and trees. An introduction to recursive programming. Sorting and searching. Prerequesites: CSC 170, MPG 4, and one of MAT 122, MAT 145, or MAT 171.

General Information.

Instructor: James Moen
Email: moen@augsburg.edu
Phone: 612 330-1142
Office: Sverdrup 203F
Office Hours: To be announced  
Classroom: Sverdrup 204
Classroom Hours: 12:10 PM-1:10 PM Monday, Wednesday, Friday
Laboratory: Sverdrup 204
Laboratory Hours: 1:30-3:00 PM Thursday

I'm often in my office at other times during the day, not just during my regular office hours. You may visit my office (almost) any time I am there. You may also telephone or send email at any time.

Textbook.

Nell Dale, Daniel T. Joyce, & Chip Weems. Object-Oriented Data Structures Using Java. Second Edition. Jones and Bartlett Publishers, Sudbury, Massachusetts. 2006. (ISBN 0-7637-3746-1)

Assignments.

I'll usually assign homework at the start of every Thursday lab session. It will be due in one week, on the following Thursday. You may be able to finish your homework during the scheduled laboratory time, but if not, you must finish it outside of class. I'll accept homework up to one calendar day late, with a 20% penalty.

Each homework assignment will involve writing a program in the programming language Java. You must turn in a listing of your program, and a copy of the actual output printed by your program. Your programs will be graded both on correctness (are they free of errors?) and on style (are they easy to understand?).

If you turn in homework by email, you must attach it as an ordinary text file. Please don't use proprietary file formats (like Microsoft Word). My computer can't read them.

Examinations.

There will be three examinations in this course: two midterms and a final. Examinations will be ``open book.'' To help you answer questions, you will be able to use your textbook, your class notes, and anything else handed out in class. See the schedule for (approximate) dates.

Grading.

I'll assign points for each homework assignment and examination. Your final grade will be based on the number of points you get during the term. About 60% of your grade will be determined by homework, and about 40% will be determined by examinations.

Honesty.

Students are expected to be familiar with Augsburg College's policies on academic honesty. You will be required to sign a statement indicating that you understand these policies. Although you may exchange ideas with other students, everything you turn in must be your own work. Copying assignments, or parts of assignments, is not permitted!

Schedule.

This schedule is approximate. I may change it during the term. Chapter numbers refer to the Dale, Joyce, and Weems text. I won't always follow the textbook exactly. Instead, I'll use it as outside reading to supplement the lectures.

  Sep 6-Sep 8 Chapter 2   Introduction. Abstract data types (ADTs).  
  Sep 11-Sep 15 Chapter 3   The Stack ADT.  
  Sep 18-Sep 22 Chapter 3   The Stack ADT.  
  Sep 25-Sep 29 Chapter 4   Recursion.  
  Oct 2-Oct 4 Chapter 4   Recursion.  
  Oct 6   First midterm examination.  
  Oct 9-Oct 13 Chapter 5   The Queue ADT.  
  Oct 16-Oct 20 Chapter 5   The Queue ADT.  
  Oct 23-Oct 25 Chapter 6   The List ADT.  
  Oct 27   No class.  
  Oct 30-Nov 1 Chapter 6   The List ADT.  
  Nov 3   Second midterm examination.  
  Nov 6-Nov 10 Chapter 7   More Lists.  
  Nov 13-Nov 17 Chapter 7   More Lists.  
  Nov 20-Nov 22 Chapter 8   Binary search trees.  
  Nov 24   No class.  
  Nov 27-Dec 1 Chapter 8   Binary search trees.  
  Dec 4-Dec 8 Chapter 10   Sorting and searching algorithms.  
  Dec 11-Dec 15 Chapter 10   Sorting and searching algorithms.  
  Dec 18   Final examination. (10:15 AM-12:15 PM)