Knuth, D. E.. The art of computer programming. Vol.3: Sorting and searching. Edited by D. E. Knuth. : , 1973.