Algorithms Lectures for Spring 2013

Lecture

Date

Topics

Overheads

Handouts

01

Jan 15

Ch 1: Textbook terms and notation; Motivation


Questions comparing fibonacci implementations/algorithms

02

Jan 17

Ch 1: Asymptotic complexity definitions and usage


Questions on big-oh, omega, and theta definitions

03

Jan 22

Ch 2: Divide-and-Conquer

Appendix B: Solving Recurrences


Questions on divide-and-conquer

04

Jan 24

Appendix B: Solving Recurrences using the characteristic equation


Questions on solving recurrences using the characteristic equation

05

Jan 29

Ch 2: Divide-and-Conquer Application: Multiplication of Large Integers


Questions on application of divide-and-conquer

06

Jan 31

Ch 3: Dynamic Programming Applications: Coin-Change Problem and Binomial Coefficient


Questions on application of dynamic programming on Coin-Change Problem

07

Feb 5

Ch 3: Dynamic Programming Application: Memoization Technique and TSP


Questions on Memoization and TSP

08

Feb 7

Complete TSP and Optimal BST


Questions on optimal BST

09

Feb 12

Ch 4: Greedy Algorithms – Prim's Algorithm


Questions on Prim's Algorithm

10

Feb 14

Ch 5: Greedy Knapsack and Dynamic 0-1 Knapsack Algorithms


Questions on Knapsack Algorithms

11

Feb 19

Review for Test 1

Test 1 Review Topics

Test 1 from Fall 2011

12

Feb 21

Test 1



13

Feb 26

Intro. To Backtracking


Questions on Backtracking

14

Feb 28

Backtracking: Sum-of-subsets and 0-1 Knapsack


Questions on Sum-of-Subsets and 0-1 Knapsack with Backtracking

15

Mar 5

More 0-1 Knapsack

C++ 0-1 Knapsack code

Questions on 0-1 Knapsack with Backtracking

16

Mar 7

Best-First search with Branch-and-Bound (Ch 6): 0-1 Knapsack and TSP


Questions on 0-1 Knapsack and TSP with Best-first search

17

Mar 12

Computational Complexity of Sorting and Searching


Questions on computational complexity of sorting and searching

18

Mar 14

Introduction to the “Theory of NP


Questions on the theory of NP

Spring Break March 18 to March 22

19

Mar 26

Reduction of CNF-SAT to clique problem; Overview of Cook's Theorem


Overview of Cook's Theorem

20

Mar 28

Activity to show Independent Set is NP-Complete


Questions on handling "Hard" problems

21

Apr 2

Review for Test 2

Test 2 Review Topics

Test 2 from Fall 2011

22

Apr 4

Test 2



23

Apr 9

A simple TSP approximation algorithm for graph satisfying the triangle inequality


Questions on TSP approximation algorithms

24

Apr 11

Limitations of TSP approximation for general graphs

Approximation algorithm for Bin-Packing Problem using nonincreasing first-fit algorithm


Questions on limitations of TSP approximation algorithms on general graph and Bin-Packing Approximation algorithm

25

Apr 16

Finish bound of Bin-Packing approximation algorithm and Introduction to parallel architecures


Questions on Intro. to Parallel Architectures

26

Apr 18

PRAM model


Questions on PRAM algorithms

27

Apr 23

Multi-core Pthread Programming


Questions on Pthread Programming

28

Apr 25

Intro. To MPI Parallel Programming


Questions on MPI Programming

29

Apr 30

Intro. GPU Programming

Getting Started with CUDA Guide from NVIDIA

Questions on GPU Programming

Questions on Parallel Programming Overhead

30

May 2

Review for Final Exam

Final Exam Review Topics


Final Exam, Wednesday (May 8) 1-2:50 PM in ITT 322