Knuth, Donald E. The Art Of Computer Programming, Vol. 4a - Combinatorial Algorithms, Part 1