COSC 2006 Course Outline
Data Structures I
September 2010

Course Organization

Textbook: Data Structures and Other Objects Using Java, Third Edition
Author: Michael Main
Publisher: Prentice-Hall, 2006, ISBN: 0-321-37525-4

Prerequisite: COSC 1047, MATH/COSC 1056

Instructor: Dr. B. G. Adams
Office: FA-378
Email: badams 'at' cs.laurentian 'dot' ca

Lecture Times: Tue-Thur, 10:00 - 11:30, Room C-206
Tutorial: Tue, 11:30 - 1:00, Room FA-358 (Unix Lab)

Grading Scheme

The final grade will be determined on the basis of

Best 4 of 5 Assignments (30%)
Term Test: Tuesday, Oct 19 (in class) (20%)
Final Exam (50%)
Assignment due dates (Fridays Sept 24, Oct 8, Oct 22, Nov 12, Nov 26), 11:30 am in lockerette

Tentative Course Outline

  1. Review of OOP using Java
  2. Introduction to ADT's
  3. Using the Java Collections Framework (JCF): See Chapter 13 of COSC 1047
  4. Main, Chapter 3 (Bag and Sequence collection classes)
  5. Main, Chapter 4 (Linked Lists for impelemeting collection classes)
  6. Main, Chapter 5 (Generic collection classes)
  7. Generic Java 5 version of Main, Chapter 5
  8. Low-level list manipulations
  9. Recursive list manipulation using the List Game
  10. Stacks
  11. Queues and Deque's
  12. List ADT's and various implementations

Eclipse Installation and Tutorials

We will be using Java 5 or Java 6 and version 3.4 of Eclipse, which supports Java 6. Eclipse installation and introductory tutorial may be found here.

Assignments and Solutions

assignments and solutions

Term Test and Final Exam

Outline for term test

term test solutions (pdf)

Final exam outline Previous final exam

Powerpoint slides

review.ppt (review.pdf) generics.ppt (generics.pdf) adt-intro.ppt (adt-intro.pdf)
ch13-jcf.odp (ch13-jcf.pdf)
MainChapter3.ppt (MainChapter3.pdf) MainChapter4.ppt (MainChapter4.pdf) 2ndEdMainChapter5.ppt (2ndEdMainChapter5.pdf)
GenericMainChapter5.ppt (GenericMainChapter5.pdf) low-level-lists.ppt (low-level-lists.pdf) listgame.ppt (listgame.pdf)
stacks.ppt (stacks.pdf) queues.ppt (queues.pdf)

Eclipse projects

bank.zippoint.zip Simple projects discussed in powerpoint slides review.ppt and adt-intro.ppt
generics-test.zip Project for simple generic type examples
ch13-project.zip Project for the notes ch13-text.pdf
main2D.zip Project for some classes from 2nd Ed of Main's book.
main.zip Project for some classes from Chapters 3, 4 and 5 of 3rd Ed of Main's book. This is the version of the book we are using.
low-level-lists.zip Project for some classes that illustrate low level list operations
list-game.zip Project for some classes that illustrate the list game (recursive and functional programming)
stacks-queues.zip Project for some classes for stacks and queues

JUnit testing

Complete JUnit javadocs

javadocs for the Assert class
junit-project.zip (example)

CS Submit (assignment submission system)

CS Submit

The End