Date | Class Period & Lecture Topic | Reading (before class) | Assignments (submitted electronically by 6pm) | |
---|---|---|---|---|
Jan 7 | NO CLASS |
|||
Jan 9 | 1. What is the class about and how will it work? (Syllabus, policies, business, motivation) |
|||
Jan 14 | 2. Algorithm Essentials (Big-O and basic arithmetic) |
Chapters 0, 1 | pp. 1-15 | |
Jan 16 | 3. Algorithm Essentials (Modular arithmetic and Primality) |
Chapter 1 | pp. 16-30 | HW1 |
Jan 21 | 4. Algorithm Essentials
(Cryptography and Euclid) |
pp. 30-38 | HW2 Project1 Design Experience |
|
Jan 23 | 5. Divide and Conquer (Multiplication, Recurrence Relations, Convex Hull) |
Chapter 2 | pp. 45-50 | HW3 |
Jan 28 | 6. Divide and Conquer (Merge Sort, Medians, Matrix Multiplication) |
pp. 50-57 | HW4 Project1: Primality Tester |
|
Jan 30 | 7. Graphs (Depth-first Search) |
Chapter 3 | pp. 80-87 | HW5 Project2 Design Experience |
Feb 4 | 8. Graphs (Directed Graphs and Strong Connectedness) |
pp. 87-95 | HW6 | |
Feb 6 | 9. Graphs (Shortest Paths) |
Chapter 4 | pp. 104-113 | HW7 |
Feb 11 | 10. Graphs (Priority Queues and Variations on Shortest Path) |
pp. 113-120 | HW8 Project2: Convex Hull |
|
Feb 13 | 11. Greedy Algorithms (Minimum Spanning Trees) |
Chapter 5 | pp. 127-138 | HW9 Project3 Design Experience |
Feb 18 | No class (Monday Schedule) | HW10 |
||
Feb 20 | 12. Greedy Algorithms (Huffman Encoding) |
pp. 138-143 | ||
Midterm (@Testing Center, February 19[8am]-21[9pm]; $5 late fee starting at 8am Friday]) Study Guide | ||||
Feb 25 | 14. Greedy Algorithms (Horn Formulas and Set Cover) |
pp. 144-147 | HW11 | |
Feb 27 | 15. Dynamic Programming (Longest Increasing Subsequence and Edit Distance) |
Chapter 6 | pp. 156-164 | HW12 |
Mar 3 | No class (Dr. Farrell traveling) | HW13 Project3: Network Routing |
||
Mar 5 | 16. Dynamic Programming (Project 4 and Knapsack) |
pp. 164-171 | ||
Mar 10 | 17. Dynamic Programming (Chain Matrix Multiplication, Shortest Paths and Independent Sets) |
pp. 171-177 | HW14 Project4 Design Experience |
|
Mar 12 | 18. Linear Programming (Introduction) |
Chapter 7 | pp. 188-198 | HW15 |
Mar 17 | CLASS CANCELLED (Per BYU COVID-19 Instructions) PROCEDURES FOR CS312 REMOTE INSTRUCTION HERE |
|||
Mar 19 | 20. Intelligent Search (Backtracking and Branch & Bound) |
Chapter 9 | pp. 271-276 | HW16 Project4: Gene Sequencing (due FRI 3/20) |
Mar 24 | 21. Intelligent Search (More Branch & Bound) Project 5 Discussion |
Chapter 9 | pp. 271-276 + extra B&B TSP material | HW19 |
Mar 26 | 22. Intelligent Search (NP-completeness) |
Chapter 8 | pp. 232-247 | Project5 Design Experience |
Mar 31 | 23. Intelligent Search (Approximation and Local Search) |
Chapter 9 | pp. 276-293 | HW20 (2nd problem is extra-credit) |
Apr 2 | 24. Advanced Algorithms (Quantum Computation) |
Chapter 10 | pp. 297-302 | |
Apr 7 | Why Consider Grad School? | HW21 | ||
Apr 9 | 25. Advanced Algorithms (Randomized Algorithms) |
Sec. 2.4 | Boxes on pp. 29, 56, 140 | Project5: TSP with Branch and Bound |
Apr 14 | 26. Advanced Algorithms (Evolutionary Computation) |
Project6: LeetCode Problems (DUE WEDS 4/15) | ||
Apr 16 | Exam Preparation (Reading) Day | |||
Apr 17 | Sec. 2 Final (3:00pm–6:00pm in 1170 TMCB) Study Guide | |||
Apr 20 | Sec. 1 Final (2:30pm–5:30pm in 1170 TMCB) Study Guide |
TA Schedule
PROCEDURES FOR CS312 TA |
||||
Chester Davison |
Brendan Hatch |
Scott Johnstun |
Hannah Maltba |
Reed Perkins |