Dr. Ellen Gethner

CSC 5451, Graduate Algorithms--Hybrid (Fall 2023)

Syllabus


automatically updated on 8 August 2023

[ Instructor, Grader and our Office Hours | Class Time and Room | Textbook | Prerequisites | Objectives | Grades | Schedule |Academic Deadlines ]


Instructor

Dr. Ellen Gethner


Email: ellen dot gethner at ucdenver dot edu
Office: LW 907.
Office hours: call or email the CS office to make a zoom appointment-- 303-315-1408 or computerscience@ucdenver.edu (office hours shown below)

Teaching Assistant/Grader

To be posted on Canvas


Class Time, Days, and Room: This class is entirely online and self paced with the exception of the midterm and the final exams. The exams will both be in person in North Classroom 1539 on Oct 16 and Dec 4, respectively, from 12:30-1:45pm. Quizzes are posted and available from the first day of class but must be turned in on canvas no later than the due date as posted in the schedule. No exceptions. Plan ahead and don't wait until the last minute to upload quizzes to canvas.

All Material (lecture notes, videos of lectures, homework assignments, quizzes, etc) for the entire semester are available on Canvas. Once again, the midterm and final exams will both be in person on the dates and times specified in the
schedule.

Textbook (required)

Cormen, et. al., Introduction to Algorithms, 3rd edition, McGraw Hill, 2009 (available in the campus bookstore and many other places...)

Prerequisites

(Equivalent to UCD) CSC 3412, which itself has Discrete Structures as a prerequisite.

Course Objectives

Grades

Course Schedule and Outline


We will study the following topics (the instructor may choose to add to and/or subtract from the list of topics as the semester progresses):

Suggested Schedule: This is a self-paced online/hybrid course. The in-person part of this course are the midterm and final exams. Due dates for quizzes and exams will not change.

All Lectures are Videotaped and Available on Canvas

Lecture Date Topic Reading/Comments Quizzes
1. Aug. 21 Introduction. Mathematical Induction, Fibonacci numbers, recurrences (review). Chapters 1-4 (review)
2. Aug. 23 Fibonacci numbers and the Euclidean Algorithm Chapters 1-4 (review)
3. Aug. 28 Euclidean Algorithm, Asymptotics, Master Theorem Chapters 1-4 (review)
4. Aug 30 Master Theorem, Dynamic Programming (Knapsack Problem) Especially 4-3 through 4-6
5. Sep. 4 (Labor Day) Dynamic Programming: Knapsack problem and Sequence comparisons 15-3 for Dynamic Programming overview and 15-1, 15-2 for extra examples.
6. Sep. 6 Dynamic programming, continued. Start of Greedy algorithms. Greedy Sheduling problem, design and proof of optimality. 16-1 through 16-3 + class notes Copy of Quiz 0, with your team, is due no later than 12:30pm: upload on canvas. Open book, open notes, open friends, open internet. All other quizzes will be due on Mondays.
7. Sep. 11 Dynamic Scheduling problem. Huffman encoding (greedy data compression): design. 16-1 through 16-3 + class notes
8. Sep. 13 Huffman encoding: implementation and proof of correctness. 16-1 through 16-3 + class notes + handout
9. Sep. 18 Begin Graph Theory and Graph Algorithms 22-1 through 22-3 + class notes Copy of Quiz 1, with your team, is due today no later than 12:30pm: upload on canvas. Open book, open notes, open friends, open internet.
10. Sep. 20 Graph Theory and Algorithms: the party problem 22-1 through 22-3 + class notes
11. Sep. 25 Graph theory: basics and begin planar graphs; adjacency matrix versus adjacency list 22-1 through 22-3 + class notes
12. Sept. 27 Graph Coloring: chromatic number; scheduling and map coloring; history of the Four Color Problem (now Four Color Theorem) class notes
13. Oct. 2 Euler's formula and average degree; Proof of the six color theorem; Proof of the five color theorem; Proof of the four color theorem. Greedy coloring algorithm is in assignment 3, problem 5. class notes Copy of Quiz 2, with your team, is due today by 12:30pm: upload on canvas. Open book, open notes, open friends, open internet.
14. Oct. 4 Chromatic number, M-Pire graphs, and thickness-two graphs: an open problem. class notes
15. Oct. 9 Earth-Moon graphs and PCB testing. Begin shortest path algorithms class notes and Chapter 24
16. Oct. 11 Single Source Shortest Paths. Dijkstra's Algorithm; Bellman-Ford Algorithm class notes and Chapter 24
17. Oct. 16 Examination One (midterm) is in person in class and will be done on your own (without your team). North Classroom 1539 from 12:30 to1:45pm. Study hard: form a study group and have some fun!
18. Oct. 18 Dijkstra example, Bellman-Ford Algorithm, and begin Network Flows; side trip to Linear Programming Chapter 24, class notes, and 29-1 and 29-2
19. Oct. 23 Network Flows, continued. Network Flow hall of fame. Ford-Fulkerson class notes and 26-1 and 26-2 and handout Copy of Quiz 3, with your team, is due today by 12:30pm: upload on canvas. Open book, open notes, open friends, open internet.
20. Oct 25 Application of the Network Flow problem: Max Flow/Min Cut Theorem class notes
21. Oct 30 Factorization of Integers is time consuming class notes and 31-9
22. Nov. 1 Probabalistic Algorithm for Primality Testing class notes and 31-8
23. Nov. 6 RSA class notes and 31-1 through 31-7 Copy of Quiz 4, with your team, is due by 12:30pm: upload on canvas. Open book, open notes, open friends, open internet.
24. Nov. 8 RSA continued. Quantum Cryptography and the breakage of RSA. class notes
25. Nov. 13 Fast Fourier Transform and Polynomial Multiplication class notes and 30-1 and 30-2 (See 30-3 for implementation)
26. Nov. 15 NP Completeness explained by way of 3SAT and (graph) 3-colorability class notes and Chapter 34
null Nov. 20-24 Fall Break Happy Thanksgiving
27. Nov. 27 Computational Geometry: Art Gallery Theorem class notes and Chapter 33 for other applications Copy of Quiz 5, with your team, is due today by 12:30pm: upload on canvas. Open book, open notes, open friends, open internet.
28. Nov 29 Research Presentation on Thickness of Graphs
29. Dec 4 Examination Two (final exam) is in person on your own (without your team) and in class: North Classroom room 1539 at 12:30-1:45pm. Study hard: form a study group and have some fun!
30. Dec. 6 Research presentation on Escher Tiling
31. Monday, Dec. 12 Office hours to be determined