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.
| 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.
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)
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.
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.
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.
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!
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)   |