Cover image for Software design and data structures in turbo pascal
Title:
Software design and data structures in turbo pascal
Personal Author:
Publication Information:
Reading, Mass. : Addison-Wesley, 1994
ISBN:
9780201156249
Added Author:

Available:*

Library
Item Barcode
Call Number
Material Type
Item Category 1
Status
Searching...
30000002571879 QA76.758 K63 1994 Open Access Book Book
Searching...

On Order

Summary

Summary

Emphasis is placed on data abstraction and abstract data types. The procedural approach is balanced with an object-oriented approach to data structures. Case studies, exercises, projects, and examples are used throughout. Programming examples are available through Internet, or can be ordered on disk. An on-line instructor's manual, solutions manual, and source code can be ordered by e-mail. Annotation c. by Book News, Inc., Portland, Or.


Author Notes

Elliot Koffman is a professor of computer and information science at Temple University. He is one of the country's foremost CS educators, a former chairman of the ACM Task Force for introductory programming methods courses, and author of a number of successful language texts in Modula-2, FORTRAN, in addition to his four editions of Pascal and Turbo Pascal.



0201156245AB04062001


Table of Contents

Introduction to Software Engineering
The Software Challenge
The Software Life Cycle
Using Abstraction to Manage Complexity
Abstract Data Types
Case Study: Setting Up a Telephone Directory
Abstract Data Types and Turbo Pascal Units
Review of Steps for Using Abstract Data Types
Program Documentation and Testing
Procedure Documentation Including Pretests and Postests
Techniques for Program Verification-Loop Invariants and Assertions
Desk-checking and Program Walkthroughs
Testing Strategies
Top-Down Testing
Bottom-Up
Testing
Mixed Approach
Debugging Techniques
Using the Turbo Pascal
Debugger
Built-in Data Structures-Arrays, Records, and Strings
Review of Arrays One Dimensional Arrays
Multidimensional Arrays
Records and Arrays of Records
Special Arrays
String Abstract Data
Type
Sorting an Array Insertion, Selection, Bubble
Searching an Array Linear, Binary Search
Efficiency of Algorithms Big O
Notation
Recursion
The Nature of Recursion
Tracing a Recursive Procedure or Function
Recursive Mathematical Functions
Recursive Procedures with Array
Parameters Quicksort Procedure
Problem Solving with Recursion
Recursive Functions with Array Parameters
Picture Processing with Recursion
Debugging Recursive Subprograms
Stacks
Stack Abstract Data Type
Stack Applications
Case Study: Displaying a String in Reverse Order
Case Study: Checking for Balanced Parentheses
Evaluating Expressions
Case Study: Evaluating Postfix Expressions
Implementing ADT Stack
Advanced Applications of Stacks Case Study: Converting Infix to Postfix
Case Study: Removing Recursion
Queues
Queue Abstract Data Type
Queue Application
Case Study: Maintaining a Queue of Passengers
Implementing ADT Queue
Advanced Application of Queues
Case Study: Using a Queue in a Simulation Problem
Dynamic Data Structures
Pointers and the New Statement
The Pascal Heap
Linked Lists
Implementing ADT Stack Using Linked Lists
Implementing ADT Queue
Using Linked Lists
Advanced Applications of Linked Lists
Case Study: An Ordered List ADT
Trees and Graphs
Multiple-linked Lists and Binary Trees
Tree Traversal
Binary Search
Tree Abstract Data Type
Binary Search Tree Application Implementing
ADT Binary Search Tree
General Trees
Graphs
More Sorting and Searching
Shell Sort
Heapsort
Hash Tables and Hashing AVL Trees
Introduction to Object Oriented Programming
Objects and Methods
Objects Versus Abstract Data Types
Polymorphism and Overloading
Inheritance