Design and Analyis of Algorithms: Course Outline Fall 2017

The list below is the plan for the fall semester of 2017. The plan may change as we proceed. The names after the numbers are the chapter names from Introduction to Algorithms, Cormen, Leiserson, Rivest, and Stein that correspond to each topic we will cover. (Note: The numbers in the list are not the chapter numbers from the textbook, but the order in which we will cover the material.)

  1. Introduction
  2. Getting Started
  3. Growth of Functions
  4. Divide-and-Conquer
  5. Heapsort
  6. Dynamic Programming
  7. Greedy Algorithms
  8. Binary Search Trees
  9. Graph Algorithms
  10. Minimum Spanning Trees
  11. Single Source Shortest Paths
  12. Red-Black Trees
  13. Augmenting Data Structures
  14. Probabilistic Analysis and Randomized Algorithms
  15. Hash Tables