Data abstraction and program development
This book is intended for students of computer science at the second year university level level who have completed an introductory programming course and who have also had an introduction to basic machine architecture. It integrates data abstraction and the use of abstract data types in programming into a course on data structures and algorithms. The use of recursive definition of data types serves as an easy introduction to the concept of recursion and of recursive functions. But more importantly, the extensive use of data abstraction provides a useful guide to the modu1arisation of programs. Choosing a suitable modu1arisation is the main problem in top down design or stepwise refinement of programs.