TCSS 343 Lecture Schedule

All dates are subject to change! Check back frequently.

IMPORTANT: You are responsible for understanding all of the assigned reading material. Some material may appear on homeworks or exams that appears only in the readings, and not in lecture. 

* Week 1

Lecture Topics

reading in Levitin

 

Tu Apr 1

Course overview; Mathematical review; Big-Oh notation

Ch. 1

HW #1 distributed
Peer #1 distributed

W Apr 3

Fundamentals of algorithm analysis

Ch. 2

 

* Week 2

 

 

 

Tu Apr 8

QUIZ 1; insertion sort, binary search

Ch. 4.3

HW #1 due

HW #2 distributed

Peer #1 solutions due

Th Apr 10

Brute force algorithms; Divide-and-conquer algorithms

Ch. 3.1-3.2, 3.4

 

* Week 3

 

 

 

Tu Apr 15

QUIZ 2; peer discussion; Divide-and-conquer algorithms; Recurrence equations I

Ch. 4.1-4.2,  4.5

 Peer #1 critique due

Th Apr 17

Divide-and-conquer: numerical algorithms; Recurrence equations II

 

HW #2 due

Peer #2 distributed

* Week 4

 

 

 

Tu Apr 22

MIDTERM 1; Decrease-and-conquer: depth-first search, breadth-first search

Ch. 5.1, 5.2

HW #3 distributed

Th Apr 24

Topological sort; Variable-size decrease algorithms

Ch. 5.3, 5.6

Peer #2 solution due

* Week 5

 

 

 

Tu Apr 29

QUIZ 3; Transform-and-conquer: presorting, Horner's rule, binary exponentiation

Ch. 6.1, 6.5

HW #3 due

HW #4 distributed

Th May 1

Transform-and-conquer, continued; String matching algorithms

Ch. 6.4, 7.2

Peer #2 critique due

* Week 6

 

 

 

Tu May 6

QUIZ 4; peer discussion; Dynamic programming: 0-1 knapsack

Ch. 8.4

HW #4 due

HW #5 distributed

Peer #3 distributed

Th May 8

Dynamic programming: optimal static binary search tree

Ch. 8.3

 

* Week 7

 

 

 

Tu May 13

Review of dynamic programming; other applications of dynamic programming

 

HW #5 due

Peer #3 solutions due

Th May 15

MIDTERM 2; Introduction to Greedy algorithms

 

HW #6A&B distributed

* Week 8

 

 

 

Tu May 20

Midterm review; peer discussion; Greedy algorithms: coins, fractional knapsack, shortest path algorithms (Dijkstra's algorithm)

Ch. 9.3

Peer #3 critique due

Peer #4 distributed

Th May 22

QUIZ 5; hw #6B discussion; Greedy algorithms: minimum spanning trees (Prim's algorithm)

Ch. 9.1

 

* Week 9

 

 

 

Tu May 27

QUIZ 5; uptrees (Kruskal's algorithm)

Ch. 9.2

HW #6A, problem 1 due

Peer #4 solutions due

Th May 29

QUIZ 6; survey of other graph problems; Greedy algorithms: Huffman trees

Ch. 9.4

HW #6A, problem 2 and bonus due

* Week 10

 

 

 

Tu Jun 3

QUIZ 6; Lower bound arguments; P, NP, NP-completeness

Ch. 11.1-11.3

HW #6B due

Peer #4 critique due

Th Jun 5

peer discussion; review

 

Peer #4 critique due

* Week 11

 

 

 

Th Jun 12

FINAL EXAM (PNK 104, 10:30-12:45am)

 

 

g-alt:0in 5.4pt 0in 5.4pt;