Art of computer programming, Vol.01: Fundamentals algorithms - Knuth, Donald E (Pearson Education, 2002)