For sophomore/junior-level courses in Data Structures. This volume explores top-down structured problem solving, the process of data abstraction and structuring, and the comparative study of algorithms as fundamental tools of program design.