Data Structures Lectures for Spring 2012

Lecture

Date

Topics

Overheads

Handouts

01

Jan 10

Algorithm Complexity Analysis

Chapter 11 PowerPoint

Algorithm Complexity Questions

Python Summary

02

Jan 12

Revisit Complexity Analysis, searching, selection sort


Searching and simple sorting Questions

03

Jan 17

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


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

04

Jan 19

Python “Review”: classes


Class and Object Questions

05

Jan 24

Pydoc, pyunit testing

Chapter 12 PowerPoint

More Qustions on Class and Object

06

Jan 26

Collections overview, array vs. linked tradeoffs

Chapter 13 PowerPoint

Array vs. Linked Implementation Questions

07

Jan 31

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


Textbook's Array Class Questions

08

Feb 02

Stack implementations

Chapter 14 PowerPoint

Stack Implementation Questions

09

Feb 07

Queue implementations

Chapter 15 PowerPoint

FIFO Queue Implementation Questions

10

Feb 09

Stack Applications and Priority Queue implementations

Partial Chapter 18 PowerPoint

Priority Queue Implementation Questions

11

Feb 14

Review for Test 1

Test 1 Review Topics

Test 1 Fall 2010

Test 1 Fall 2010 Solution

12

Feb 16

Test 1: Chapters 11 – 14



13

Feb 21

List types and Positional List Implementations and Iterators

Chapter 16 PowerPoint

List Implementation and Iterators Questions

14

Feb 23

Heap, Merge, and Quick Sorts


Advanced Sorting Questions

15

Feb 28

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

Chapter 17 PowerPoint

Quicksort and Coin-change divide-and-conquer Questions

16

Mar 01

Coin-change backtracking vs. dynamic programming


Coin-change Backtracking Questions

17

Mar 06

Binary Tree terminology and operations

Binary Tree and Binary Search Tree implementation

Chapter 18 PowerPoint

Binary tree terminology, operations and implementation questions

18

Mar 08

Binary Search Tree implementation


Binary Search Tree implementation Questions

Spring Break: March 12 – March 16

19

Mar 20

Intro. To AVL trees


Intro. To AVL Tree implementation Questions

20

Mar 22

Continue AVL trees



21

Mar 27

Review for Test 2

Test 2 Review Topics

Test 2 Fall 2010

Test 2 Fall 2010 Solution

Test 2 Spring 2011

Test 2 Spring 2011 Solution

22

Mar 29

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


Test 2 Spring 2012 Solution

23

Apr 03

Hash table implementations

Chapter 19 PowerPoint

On-line Hashing Tutorial

Hash Table implementation and performance Questions

24

Apr 05

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

Apr 10

Deletion from B+ trees and graph introduction

Chapter 20 PowerPoint

Questions on graph representations

26

Apr 12

Graph Implementation and DFS Traversal


Graph Implementation and DFS Graph Traveral Questions

27

Apr 17

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


Graph Algorithms Questions

28

Apr 19

Graph Algorithms: Traveling-Salesperson (TSP) Problem


Graph Algorithms: TSP Approximation Algorithm Questions

29

Apr 24

Finish TSP Approximation Algorithm



30

Apr 26

Review for Final Exam

Final Exam Review Topics


Final Exam, Tuesday (May 1) 8-9:50 AM in ITT 328