This introduction to data structures using the Cprogramming language emphasizes problem specificationand program design, analysis, testing, verificationand program correctness. It's Key Features: * stresses recursion through a range of applications and development of criteria for use * includes case studies that integrate various topics into programs of realistic size * discusses major principles of software engineering and aplies them to large programming projects * emphasizes the process of data abstraction and abstract data types (ADT) separating ADTs from implementation decisions