Homework assignments are to be submitted via Moodle before class on the day on which they are listed. Projects are due by 11 PM via Moodle on the day on which they are listed. Note that all page numbers and problems listed are specific to the hardcopy version of the book with the ISBN number as listed in the syllabus.

Date | Class Period & Lecture Topic | Reading | Assignment |
---|---|---|---|

Aug 23 | Syllabus, policies, business, goals, intro | ||

Aug 25 | Big-O and basic arithmetic | pp. 1-15 | Install Python and PyQt5 and start playing around |

Aug 30 | Modular arithmetic and Primality | pp. 16-30 | HW1 |

Sep 1 | Cryptography and Euclid | pp. 30-38 Cracking RSA (optional) |
HW2 P1 Design Experience |

Sep 6 | DIVIDE AND CONQUER:Multiplication, Recurrence Relations, Merge Sort |
pp. 45-50 | HW3 P1: Primality Tester |

Sep 8 | Medians, Matrix Multiplication, Convex Hull | pp. 50-57 | HW4 |

Sep 13 | GRAPHS:Depth-first Search |
pp. 80-87 | HW5 P2 Design Experience |

Sep 15 | Directed Graphs and Strong Connectedness | pp. 87-95 | HW6 |

Sep 20 | Shortest Paths | pp. 104-113 | HW7 |

Sep 22 | Priority Queues and Variations on Shortest Path | pp. 113-120 | HW8 P2: Convex Hull |

Sep 27 | GREEDY:Minimum Spanning Trees |
pp. 127-138 | HW9 |

Sep 29 | Huffman Encoding | pp. 138-143 | HW10 P3 Design Experience |

Oct 4 | Horn Formulas and Set Cover | pp. 144-147 | HW11 |

Oct 6 | Midterm (on Moodle, closes midnight) | Study Guide | |

Oct 11 | DYNAMIC PROGRAMMING:Longest Increasing Subsequence and Edit Distance |
pp. 156-164 | HW12 P3: Network Routing |

Oct 13 | Knapsack | pp. 164-171 | HW13 |

Oct 18 | Chain Matrix Multiplication | pp. 164-171 | |

Oct 20 | Shortest Paths and Independent Sets | pp. 171-177 | P4 Design Experience |

Oct 25 | Dynamic Programming Continued | HW14 | |

Oct 27 | LINEAR PROGRAMMING:Introduction to Linear Programming |
pp. 188-198 | HW15 |

Nov 1 | Duality and Zero-sum Games | pp. 206-213 | HW16 P4: Gene Sequencing |

Nov 3 | INTELLIGENT SEARCH:Backtracking and Branch & Bound |
pp. 271-276 + extra B&B TSP material |
HW17 |

Nov 8 | More Branch & Bound | pp. 271-276 + extra B&B TSP material |
P5 Design Experience |

Nov 10 | NP-completeness | pp. 232-247 + "Unsolvable Problems" (p. 263) |
HW19 |

Nov 15 | Approximation and Local Search | pp. 276-293 | HW20 |

Nov 17 | ADVANCED ALGORITHMS:Randomized Algorithms & Grad School |
Section 2.4; Boxes on pp. 29, 56, 140 |
HW21 |

Nov 22 | Fall Break |
||

Nov 24 | Fall Break |
||

Nov 29 | Quantum Computation | pp. 297-302 | P5: TSP with Branch and Bound |

Dec 1 | NP-Complete Mapping Reductions | ||

Dec 6 | Final Exam Review | Study Guide | |

Dec 8 | Group Project Presentations | P6: Group TSP | |

Dec 15 | Final (on Moodle, closes midnight) |
Study Guide |

The schedule is subject to change.