Data Structures Lectures for Fall 2011

Lecture

Date

Topics

Overheads

Handouts

01

Aug 23

Algorithm Complexity Analysis

Chapter 11 PowerPoint

Algorithm Complexity Questions

Python Summary

02

Aug 25

Revisit Complexity Analysis, searching, selection sort


Searching and simple sorting Questions

03

Aug 30

Bubble sort, recursion review, and divide-and-Conquer vs. dynamic programming


Recursion and Divide-and-Conquer vs. Dynamic Programming Questions

04

Sep 01

Python “Review”: classes


Class and Object Questions

05

Sep 06

Pydoc, pyunit testing

Chapter 12 PowerPoint

More Qustions on Class and Object

06

Sep 08

Collections overview, array vs. linked tradeoffs

Chapter 13 PowerPoint

Array vs. Linked Implementation Questions

07

Sep 13

More on Array vs. linked tradeoffs; Textbook's Array class


Textbook's Array Class Questions

08

Sep 15

Stack implementations

Chapter 14 PowerPoint

Stack Implementation Questions

09

Sep 20

Queue implementations

Chapter 15 PowerPoint

FIFO Queue Implementation Questions

10

Sep 22

Stack Applications and Priority Queue implementations

Partial Chapter 18 PowerPoint

Priority Queue Implementation Questions

11

Sep 27

Review for Test 1

Test 1 Review Topics

Test 1 Fall 2010

Test 1 Fall 2010 Solution

12

Sep 29

Test 1: Chapters 11 – 14



13

Oct 04

List types and Positional List Implementations and Iterators

Chapter 16 PowerPoint

List Implementation and Iterators Questions

14

Oct 06

Heap, Merge, and Quick Sorts


Advanced Sorting Questions

15

Oct 11

Quick Sort with analysis and coin-change problem divide-and-conquer

Chapter 17 PowerPoint

Quicksort and Coin-change divide-and-conquer Questions

16

Oct 13

Coin-change backtracking vs. dynamic programming


Coin-change Backtracking Questions

17

Oct 18

Binary Tree terminology and operations

Binary Tree and Binary Search Tree implementation

Chapter 18 PowerPoint

Binary tree terminology, operations and implementation questions

18

Oct 20

Binary Search Tree implementation


Binary Search Tree implementation Questions

19

Oct 25

Intro. To AVL trees


Intro. To AVL Tree implementation Questions

20

Oct 27

BST vs. AVL performance; Intro. To hashing

Chapter 19 PowerPoint

On-line Hashing Tutorial

BST vs. AVL Tree comparison and Hashing Questions

21

Nov 01

Review for Test 2

Test 2 Review Topics

Test 2 Fall 2010

Test 2 Fall 2010 Solution

22

Nov 03

Test 2: Chapters: 15-17 and sections 18.9-18.11 on Heaps


Test 2 Spring 2011

Test 2 Spring 2011 Solution

23

Nov 08

Hash table implementations


Hash Table implementation and performance Questions

24

Nov 10

File data structures: Hashing and B+ Trees

Good B+ Tree Summary

Wikipedia B+ Tree discussion

B+ Tree

Questions on magnetic disk and file structures

25

Nov 15

Deletion from B+ trees and graph introduction

Chapter 20 PowerPoint

Questions on graph representations

26

Nov 17

Graph Implementation and DFS Traversal


Graph Implementation and DFS Graph Traveral Questions

Thanksgiving Break

27

Nov 29

Graph Algorithms: Prim's Min.-Spanning Tree and Dijkstra's Shortest Path


Graph Algorithms Questions

28

Dec 01

Graph Algorithms: Traveling-Salesperson (TSP) Problem


Graph Algorithms: TSP Approximation Algorithm Questions

29

Dec 06

Finish TSP Approximation Algorithm



30

Dec 08

Review for Final Exam

Final Exam Review Topics


Final Exam, Tuesday (December 13) 8-9:50 AM in ITT 322