Algorithms and Programming - Shen, Alexander; Holden, Helge (Springer New York, 2010)