Datasstructures, Algorithms And Applications In JAVA - Satraj Sahni (McGraw-Hill, 2000)