Data Structures Lectures for Fall 2013

Lecture

Date

Topics

Overheads

Handouts

01

Aug 27

Ch 1: Python Review

Chapter 1 Slides

Python Review Questions

Python Review Questions - .doc

02

Aug 29

Ch. 2: Algorithm Analysis; Big-oh; timing

Chapter 2 Slides

Python classes and algorithm analysis questions

Python classes and algorithm analysis questions - .doc

03

Sep 3

Ch. 2: Performance of Python Built-in data structures

Chapter 2 Part 2 Slides

More algorithm and built-in data structures analysis questions

More algorithm and built-in data structures analysis questions - .doc

04

Sep 5

Ch. 3: Linear data structures; stack implementations


Stack implementation questions

Stack implementation questions - .doc

05

Sep 10

Stack applications; Queue implementations


Linked stack implementation questions

Linked stack implementation questions - .doc

06

Sep 12

Queue applications; Deque


Deque questions

Deque questions - .doc

07

Sep 17

Ch. 6.6: Priority Queue: binary heap implementation


Heap questions

Heap questions - .doc

08

Sep 19

Unordered Lists implementations

unorderedList.zip

Unsorted linked list questions

Unsorted linked list questions - .doc

09

Sep 24

Ordered List implementation Ch. 4: Recursion: fibonacci example


Ordred linked list questions

Ordered list questions - .doc

10

Sep 26

Ch. 4: Recursion continued


More recursion questions

More recursion questions - .doc

11

Oct 1

Review for Test 1

Test 1 Review Topics

Test 1 Spring 2013 Solution

Test 1 Spring 2013

Test 1 Fall 2012

Test 1 Fall 2012 Solution

Test 1 Fall 2010

Test 1 Fall 2010 Solution

12

Oct 3

Test 1: Chapters 1 - 3


Test 1 Fall 2013 Solution

13

Oct 8

Recursion examples: backtracking coin-change problem an dynamic programming


Coin-change questions

Coin-change questions - .doc

14

Oct 10

Ch. 5: Searching: linear and binary search

On-line Hashing Tutorial

Searching questions

Searching questions - .doc

15

Oct 15

Searching: hashing: chaining/closed addressing implementations


Hashing questions

Hashing questions - .doc

16

Oct 17

Hashing implementations: open addressing implementations; Simple sorts: bubble, selecton, and insertion sorts;


Simple sort questions

Simple sort questions - .doc

17

Oct 22

Advanced sorts: heap, merge, and quick sorts


Advanced sort questions

Advanced sort questions - .doc

18

Oct 24

Ch. 6: tree terminology, binary tree implementation, traversals, parse tree application


Tree questions

Tree questions - .doc

19

Oct 29

Binary Search Tree implementation


More Tree questions

More Tree questions - .doc

20

Oct 31

Binary Search Tree delete method


BST delete questions

BST delete questions - .doc

21

Nov 5

Review for Test 2

Test 2 Review Topics

Test 2 Fall 2012

Test 2 Fall 2012 Solution

Test 2 Spring 2013 Solution

22

Nov 7

Test 2: Chapters 4 – 5


Test 2 Fall 2013 Solution

23

Nov 12

AVL trees


AVL Tree questions

AVL Tree questions - .doc

24

Nov 14

More AVL trees



25

Nov 19

File Structures vs. Data Structures

Good B+ Tree Summary

Wikipedia B+ Tree discussion

B+ Tree

File structure questions

File structure questions - .doc

26

Nov 21

Ch. 7: Graph terminology, traversals (BFS and DFS)


Graph questions

Graph questions - .doc

Thanksgiving Break (Nov 25 – Nov 29)

27

Dec 3

Graph implementations


More Graph questions

More Graph questions - .doc

28

Dec 5

Graph select algorithms: topological sort, Dijkstra’s algorithm, Prim's Algorithm

Code from lecture:

lec28.zip

Even More Graph questions

29

Dec 10

Graph algorithms: Traveling Salesperson Problem (TSP)


TSP problem questions

30

Dec 12

Review for Final Exam

Final Exam Review Topics

TSP problem Backtracking & Best-first search questions

Final Exam, Tuesday (Dec 17) 8:00-9:50 AM in ITT 328