TREE
TREE
TREE
Lecture #0
Introduction
Bart Niswonger
Summer Quarter 2001
Come up and say hello!
Today’s Outline
• Administrative Cruft
• Overview of the Course
• Queues
• Stacks
• Project #1
Course Information
• Instructor: Bart Niswonger
226D Sieg Hall
bart@cs.washington.edu
Office hours: M 11:50-12:50, W 1:50-2:50 &
whenever door is open
• TA:
Ashish Sabharwal ashish@cs
Office hours: Tues 10:50-11:50 in 226A/B
• Text: Data Structures & Algorithm Analysis in
C++, 2nd edition, by Mark Allen Weiss
Tutorials
• Unix I
– Tuesday, June 19th
– 10:50-11:50 + lab time, Sieg 322
• Templates
– Thursday, June 21st REQUIRED
– 10:50-11:50 + lab time, GUG 410
• In place of section
• Unix Development
– Tuesday, June 26th
– 10:50-11:50 + lab time, Sieg 322
Course Policies
• Roughly weekly written homework due at the
start of class on the due date
• Projects (4 total) due by 10PM on the due
date
– you have 4 late days for projects
• Grading
– homework: 15%
– projects: 25%
– midterm: 20% PARTICIPATION!
– final: 30%
– best of these: 10%
Course Mechanics
• 326 Web page:
www/education/courses/326/01su
• 326 course directory: /cse/courses/cse326
• 326 mailing list: cse326@cs.washington.edu
– subscribe to the mailing list using majordomo, see
homepage
• Course labs are 232 and 329 Sieg Hall
– lab has NT machines w/X servers to access UNIX
• All programming projects graded on
UNIX/g++
Goals of the Course
• Become familiar with some of the fundamental
data structures in computer science
• Improve ability to solve problems abstractly
– data structures are the building blocks
• Improve ability to analyze your algorithms
– prove correctness
– gauge (and improve) time complexity
• Become modestly skilled with the UNIX
operating system and X-windows (you’ll need this in
upcoming courses)
Observation
• All programs manipulate data
– programs process, store, display, gather
– data can be information, numbers, images, sound
• Each program must decide how to store data
• Choice influences program at every level
– execution speed
– memory requirements
– maintenance (debugging, extending, etc.)
What is a Data Structure?
data structure -
What is an Abstract Data Type?
front back
front back
back
b c d e f
back