CMSC-441 Algorithms (Sherman, Fall 2001): Supplemental Reading

  1. Introduction to Algorithms. Cormen, Leiserson and Rivest. [Our textbook.]

  2. Brassard, Gilles, and Paul Bratley, Fundamentals of Algorithmics, Prentice Hall (1996), second edition. [Section 4.7 is required.]

  3. The Design and Analysis of Algorithms. Aho, Hopcroft and Ullman. [Somewhat dated, but this is an old standby]

  4. Computer Algorithms. Baase.

  5. Knuth, Donald, Fundamental Algorithms in The Art of Computer Programming, vol. I, Addison-Wesley (1973).

  6. Knuth, Donald, Seminumerical Algorithms in The Art of Computer Programming, vol. II, Addison-Wesley (19??).

  7. Knuth, Donald, Sorting and Searching in The Art of Computer Programming, vol. III, Addison-Wesley (19??).

  8. The Design and Analysis of Algorithms. Dexter Kozen. [Advanced algorithms lecture notes.]

  9. Algorithms in Modula-3. Robert Sedgewick. [The same book is also available in Pascal, C and C++.]

  10. Algorithmics: The Spirit of Computing. Harel

  11. First Leaves: A Tutorial Introduction to Maple V. Char, et al.

  12. Programming Pearls. Bentley.

  13. More Programming Pearls. Bentley.

  14. Writing Efficient Programs. Bentley.

  15. Handbook of Algorithms and Data Structures. Gonnett.

  16. Discrete Mathematics with Applications. Epp. [CMSC 203 textbook.]

  17. Introduction to Probability Theory. Hoel, Port and Stone.

  18. Applied Combinatorics. Roberts.

  19. Garey, Michael R., and David S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, W. H. Freeman and Company (1979). [Chapter 3 is strongly recommended.]

  20. Sipser, Michael, Introduction to the Theory of Computation, PWS Publishing (1997).

  21. Leeuwen, J. van, ed., Algorithms and Complexity in Handbook of Theoretical Computer Science, MIT Press (1990).