Department of Computer Science
Stanford University
CS 161 - Introduction to Algorithms and Data Structures
Summer 2009

Instructor: Dave Kauchak
e-mail: [first_initial][last_name]
office hours: Monday 11-12am, Gates 195

TA: Wenxiu Ma
e-mail: [first_name]
office hours: Wednesday 4-6pm, Gates B24A

TA: Tiyu Wang
e-mail: [first_name][last_name]
office hours: Tuesday 7-10pm, Gates B02

location: Gates B01
web page:
discussion board:



The final and solutions have been posted on the discussion board
Homework 6 solution now available
Homework 5 solution now available
Sample final available
Homework 6 now available
Final review session Wednesday, 8/12 3:15-5:05pm in Skilling Auditorium
Homework 4 solution now available
Homework 5 now available
Anonymized scores for homeworks and the midterm can be found here
Homework 4 now available
Homework 3 solution now available
Sample midterm available
Optional hashtable homework available
Homework 2 solution now available
Sample midterm available
Midterm review session Friday, 7/17 2:15-4:05pm in Skilling Auditorium
Homework 3 now available
Homework 2 due date extended to Fri. 7/10, 5pm
Homework 1 solution now available
Homework 2 now available
7/1 office hours will be in Gates 195
Homework 1 now available


Note: This is a tentative schedule and is subject to change
6/24Admin. material, IntroductionCh. 1, 2Admin material, Introduction.v3
6/29O-notationCh. 3BigO, BigO slides.v2
7/1RecurrencesCh. 4.1-4.3Recurrences.v3,
Recurrences slides.v2
7/6Quicksort, Randomized algorithmsCh. 7,8.1-8.3Quicksort,
Quicksort slides.v2
7/8Elementary data structures, HeapsCh. 6, 10Heaps, Heap slides
7/13Binary search trees, B-TreesCh. 12,18Search Trees.v2,
Search Trees slides.v2
7/15HashtablesCh. 11, except 11.3.3 & 11.5Hashtables,
Hashtables slides.v3
7/22Graph algorithmsCh. 22Graphs.v3, Graphs slides.v3
7/27Minimum spanning trees and
single source shortest paths
Ch. 23, 24Graphs2.v3
Graphs2 slides.v4
7/29Greedy algorithmsCh. 16, except 16.4Greedy.v2, Greedy slides.v2
8/3Dynamic programmingCh. 15, except 15.5Dynamic Programming.v2,
DP slides.v2
8/5String algorithmsCh. 32, except 32.4Strings.v5, Strings slides.v3
8/10Linear programmingCh. 7 from Dasgupta et. al
sections 7.1, 7.6, 7.7
Optional Ch. 29
LP slides.v4
8/12Advanced algorithms/Review Review, Review slides
8/14Final3:30pm - 6:30pm, Gates B01 


Admin material