Algorithms — Selected Bibliography
Core textbooks, classic papers, and practical references
How to use this bibliography
This curated list covers foundational algorithm texts, influential papers, and practical references commonly used in
computer science courses and software engineering. Entries are formatted in a concise APA-like style for
readability.
Core Textbooks (Foundations)
● Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2022). Introduction to Algorithms (4th ed.). MIT Press.
● Kleinberg, J., & Tardos, É. (2005). Algorithm Design. Pearson.
● Sedgewick, R., & Wayne, K. (2011). Algorithms (4th ed.). Addison-Wesley Professional.
● Dasgupta, S., Papadimitriou, C. H., & Vazirani, U. V. (2008). Algorithms. McGraw-Hill Education.
● Skiena, S. S. (2020). The Algorithm Design Manual (3rd ed.). Springer.
Classic & Influential Papers
● Dijkstra, E. W. (1959). A note on two problems in connexion with graphs. Numerische Mathematik, 1, 269–271.
● Bellman, R. (1958). On a routing problem. Quarterly of Applied Mathematics, 16(1), 87–90.
● Ford, L. R., & Fulkerson, D. R. (1956). Maximal flow through a network. Canadian Journal of Mathematics, 8,
399–404.
● Karp, R. M. (1972). Reducibility among combinatorial problems. In Complexity of Computer Computations (pp.
85–103).
● Tarjan, R. E. (1972). Depth-first search and linear graph algorithms. SIAM Journal on Computing, 1(2), 146–160.
Randomized, Approximation & Advanced Topics
● Motwani, R., & Raghavan, P. (1995). Randomized Algorithms. Cambridge University Press.
● Vazirani, V. V. (2001). Approximation Algorithms. Springer.
● Williamson, D. P., & Shmoys, D. B. (2011). The Design of Approximation Algorithms. Cambridge University Press.
● Mitzenmacher, M., & Upfal, E. (2017). Probability and Computing (2nd ed.). Cambridge University Press.
Data Structures & Practical Engineering
● CLRS Chapter references: Heaps, balanced trees, hash tables, and amortized analysis for implementation
fundamentals.
● Okasaki, C. (1998). Purely Functional Data Structures. Cambridge University Press.
● Goodrich, M. T., Tamassia, R., & Goldwasser, M. H. (2014). Data Structures and Algorithms in Python. Wiley.
Online & Reference Resources
● Knuth, D. E. (1997–2011). The Art of Computer Programming (Vols. 1–4A). Addison-Wesley Professional.
● CP-Algorithms. (n.d.). Competitive programming algorithms and data structures reference.
https://cp-algorithms.com
● Stanford CS161 / MIT 6.006 course notes (various years). Public lecture notes on algorithms.
Tip
If you want, I can also generate versions tailored to undergraduate coursework, interview prep, research-level
algorithms, or a specific citation style (APA, MLA, IEEE, BibTeX).