Fundamentals of computer algorithms - Horowitz, Ellis. (Computer Science Press, 1978)