Computer Science 361
Analysis and Design of Algorithms
September 2014

Lecture Notes

  1. Introduction and PRELIMINARIES
  2. The Growth of Functions
  3. Recurrences
  4. Data Structures
  5. Lists
  6. Graphs
  7. Trees
  8. Priority Queues
  9. Divide and Conquer Technique
  10. Transform and Conquer Technique
  11. Heaps and Heap Sort
  12. Bubble Sort
  13. Other Sorting Algorithms
  14. AVL Trees
  15. Decrease and Conquer Programming Technique
  16. Topological Sort
  17. Greedy Programming Technique
  18. Fractional Knapsack
  19. Huffman Encoding
  20. Minimum Spanning Trees
  21. Union of disjoint sets and finding the partition
  22. Single Source Shortest Path
  23. Dynamic Programming
  24. Dynamic Programming -- Transitive closure and other Graph algorithms
  25. Iterative Improvement
  26. Space and Time Tradeoff --Pattern Matching
  27. Hash Tables
  28. Brute Force
  29. Limitations of Algorithm Power
  30. Cheat Sheet PS PDF

Last modified:Thursday December 25, 2014 at 05:36 pm AST
Cezar Câmpeanu