CST8130: Data Structures: Fall 2008

Rex Woollard

Professor of Computer Studies
E-mail: rex.woollard@algonquincollege.com
Office: T-318
Timetable  Course Outline  Blackboard

Notices


Welcome to Data Structures!
Need extra help? Tutors are available. Login to Blackboard Use The C++ Expert to improve your skills. (Installation Patch)
Office Suite Offerings:
OpenOffice
Possible Reference Textbooks (not expected to purchase, but you might find useful):
- Teach Yourself Data Structures and Algorithms in 24 Hours with CDROM, by Robert Lafore, SAMS, ISBN: 0672316331 (may be out of print)
- Data Structures: A Pseudocode Approach with C++, by Richard F. Gilberg and Belhrouz A. Forouzan, Brooks/Cole Thomson Learning, ISBN: 0-534-95216-X
- Data Structures and the Standard Template Library, by William J. Collins, McGraw-Hill, ISBN: 0-07-236965-5
- Data Structures and Program Design in C++, by Robert L. Kruse and Alexander J. Ryba, Prentice-Hall, ISBN: 0-13-768995-0
- Data Structures with C++ using STL 2nd Edition, by William Ford and William Topp, Prentice-Hall, ISBN: 0-13-08580-1

Articles

Cloud Computing and Small Business, Emergency Windows Patch

Archived: Warhammer Takes on World of Warcraft, Keyboard Sniffers, Death by Facebook, New Vision for African Computing, Protests of Virtual Strip Search, Location-Aware Version of Firefox, Unbreakable Quantum Encryption, On the Future of Paper, Text Messaging Kills, Vista Fixes, Safe Coding Practices, The Art of Mathematics, Future of Moore's Law, Rex's Not-so-Excellent Adventure, World's Largest Prime, Microsoft Off-the-Hook for $1.5 Billion, New UK Watchdog to Protect Children, SuperComputer Sets Petaflop Pace, Arctic Ice at Tipping Point, Computer Virus in Space, Google Launches Browser, Ultrasound Gives Feel to Games, Google@10, Rise of the Zombies, Did Text-Messaging Kill 25 People, Hi-Tech Virtual Museum, Japan-Tops Canada-Misses Top-10 Broadband, Oceans 'Too Noisy” for Whales, Stroke Patients and Gaming Sensors, Capturing Digital Sounds

Lectures and Labs


Last Update

Documents

Online Lecture


Online: Review: Pointers: There will be a quiz to check understanding.

2008-06-11

PDF

iExplorer

Online Review: Using Visio for Memory Maps

2008-06-11

Stencil Installation
Video Demonstration


Lab 1: Sorting Experiments and the Big-O

2008-06-11

PDF   EXE


Lecture: Simple Sorts: Selection
- Explored for the purpose of understanding Big-O issues. I'll never ask you to write a program to do this.


PDF


Lecture: Simple Sorts: Insertion
- Explored for the purpose of understanding Big-O issues. I'll never ask you to write a program to do this.


PDF

iExplorer

Online Lecture: Quantifying Efficiency: The Big-O: There will be a quiz to check understanding.

2007-09-06

PDF

iExplorer

Lecture: qsort( )
- This sort technique is a keeper. Remember how to do this.

2007-09-26

PDF


Lab 2: Sorting with qsort( ): There will be a quiz to check understanding.

2008-09-17

PDF   Code   Data
Correction


Lecture and Online Review: Recursion
-
Towers of Hanoi website: http://www.mazeworks.com/hanoi/hanoi.htm

2007-09-13

PDF

iExplorer

Lecture and Online Review: Merge Sort

2007-09-13

PDF

iExplorer

Lab 3: Sorting with Merge Sort

2008-09-23

PDF   Code   EXE


Lecture and Online Review: Inheritance / Virtual Functions

2008-09-26

Virtual Functions
Virtual Function Code
Inheritance Code


Lecture and Online Review: Linked Lists: Overview

2008-09-26

PDF

iExplorer

Lecture and Online Review: Linked Lists: Adding at Head

2008-09-26

PDF

iExplorer

Lecture and Online Review: Linked Lists: Adding at Tails

2008-10-01

Notes   Code

iExplorer

Lecture and Online Review: Linked Lists: Friendship BAD; Nesting GOOD

2008-10-05

PDF


Lecture: Linked Lists: Using Recursion with Reference Arguments / Return Values
-
Recursive implementation shown to set the stage for Tree processing. Ordinarily, Recursion is a poor choice for Linked Lists.

2008-10-05

PDF   ZIP


Lab 4: Implementing Linked List Code

2008-10-07

PDF   Data


Lecture: Templates and the STL

2008-10-19

Templates   STL


Lab 5: Using the STL vector Container

2008-10-21

PDF


Online and Lecture: Stack Uses: Parse, Reverse, Postpone, Backtrack

2007-10-10

Introduction: PDF
Reversing: PDF
Parsing: PDF
Postponing: PDF
Backtracking: PDF

Introduction
Reversing
Parsing
Postponing

Lecture: Stack Implementation: Array or Linked List




Lecture: Inheritance to implement Stack




Lecture: Review: Operator Overloading: < == >
- Used to support STL (Standard Template Library)

2007-10-10

PDF


Lab 6: Spell Checking using the STL

2008-11-13

PDF   Dictionary   Oliver


Online: Trees: Introduction: There will be a quiz to check understanding.

2007-11-05

PDF

iExplorer

Lecture: Trees: Binary: Expression

2007-11-05

PDF


Lecture: Trees: Binary Search

2007-11-05

PDF


Online: Trees: Binary Search: Traversal: preorder, inorder, postorder
-
There will be a quiz to check understanding.

2007-11-05

PDF

iExplorer

Lecture: Searching Lists: Linear / Binary / Trees: Binary Search: Searching

2007-11-14

PDF


Lecture and Online: Hash Tables

2007-11-14

PDF

iExplorer

Lab 7: Hash Function

2008-11-11

PDF   Code-Data


Lecture: Tree Variations: B-Tree

2008-11-19

PDF   Answers


Lecture: Tree Variations: Heap

2007-11-19

PDF


Lecture: Tree Variations: Trie-Tree

2008-11-19

PDF


Final Project: Concordance Generator

2008-11-19

PDF   Sample


Tests


Date of Posting



Previous First Quiz

2008-06-14

Quiz


Previous Midterm

2008-06-14

Part 1   Part 2


Quiz 1

2008-09-22

A   B


Midterm

2008-11-13

Part 1   Part 2


Quiz 2

2008-11-19

Quiz