Algorithms and Data Structures The Science of Computing - Douglas Baldwin