Introduction to Algorithms, 3rd Edition (MIT Press)
Thomas H. Cormen & Charles E. Leiserson & Ronald L. Rivest & Clifford Stein