Data Structures and Program Design In C: United States Edition by Robert L. Kruse
Appropriate for Computer Science II and Data Structures in departments of Computer Science.
Progressing from the concrete to the abstract - and using numerous, substantial case studies and sample programs - this text explores structured problem solving, data abstraction, software engineering principles, and the comparative analysis of algorithms as fundamental tools of program design.