Computer Algorithms by Ellis Horowitz & Sartaj Sahni