Java : a framework for program design and data structures
Author(s)
Bibliographic Information
Java : a framework for program design and data structures
Brooks/Cole, 2000
Available at 2 libraries
  Aomori
  Iwate
  Miyagi
  Akita
  Yamagata
  Fukushima
  Ibaraki
  Tochigi
  Gunma
  Saitama
  Chiba
  Tokyo
  Kanagawa
  Niigata
  Toyama
  Ishikawa
  Fukui
  Yamanashi
  Nagano
  Gifu
  Shizuoka
  Aichi
  Mie
  Shiga
  Kyoto
  Osaka
  Hyogo
  Nara
  Wakayama
  Tottori
  Shimane
  Okayama
  Hiroshima
  Yamaguchi
  Tokushima
  Kagawa
  Ehime
  Kochi
  Fukuoka
  Saga
  Nagasaki
  Kumamoto
  Oita
  Miyazaki
  Kagoshima
  Okinawa
  Korea
  China
  Thailand
  United Kingdom
  Germany
  Switzerland
  France
  Belgium
  Netherlands
  Sweden
  Norway
  United States of America
Description and Table of Contents
Description
This work focuses on traditional CS2 data structures topics, while developing object-oriented programs. The software life cycle is emphasized throughout, with numerous case studies of varying size and complexity. The first half of the book covers program design with classes, inheritance, polymorphism, recursion and complexity analysis. The second half addresses the standard abstract data types (ADTs) - stack, queue, list, tree, set, table and graph - including discussions of different implementations, applications and the complexity of each ADT. Wherever possible, the book uses the abstract data types in the Java 2 Collections Framework. A final chapter on multithreading and synchronization provides a transition to follow-on courses in computer science. The book provides two add-on software packages that enable students to build easy graphical user interfaces, and extend the Java 2 Collections Framework to include all the relevant abstract data types.
Table of Contents
OVERVIEW OF CS2 Collections / Abstract Data Types / Algorithm Analysis / Algorithm Types / Introduction to Object-Oriented Programming / Decomposition of Object-Oriented Systems / The Model/View Pattern / The Software Development Lifecycle 2. INTRODUCTION TO GUI-BASED APPLICATIONS The Structure of Simple Java Applications / Brief Overview of BreezyGUI Features 3. PROGRAM DESIGN WITH USER-DEFINED CLASSES Classes and Objects / A Student Class / Editing, Compiling, and Testing the Student Class / BreezyGUI: Menus and the Title / Case Study 3.1: Student Test Scores / The Static Modifier / Constructors / Primitive Types, Reference Types, and the null Value / Copying Objects and the Cloneable Interface / Comparing Objects for Equality / The Comparable Interface / Object Serialization / Case Study 3.2: Student Test Scores Again 4. PROGRAM DESIGN WITH INHERITANCE AND POLYMORPHISM Implementing a Simple Shape Hierarchy / Using the Shape Classes / Extending the Shape Hierarchy / Arrays of Shapes / Shapes as Parameters and Return Values / An Employee Hierarchy / Case Study 4.1: The Painter's Friend / Object-Oriented Analysis and Design Guidelines 5. PROGRAM DESIGN WITH RECURSION Recursion s a Problem Solving Strategy / Recursive Algorithms / Errors in Recursive Algorithms / Converting Non-Tail Recursion to Tail Recursion / More Complex Recursive Algorithms / Recursion and Backtracking / Case Study 5.1: A Maze Solver / Recursion and Processing Programming Languages / Case Study 5.2: A Recursive Descent Parser 6. ALGORITHM ANALYSIS AND OTHER FORMAL TOOLS Measuring the Efficiency of Algorithms / Big-O Analysis / Search Algorithms / Sort Algorithms / Case Study 6.1: Recording Running Times and Counting Instructions / Case Study 6.2: Visualizing the Sorts 7. INTRODUCTION TO COLLECTIONS Overview of Collections / Collections for String and Bit Manipulations / The Organization of the Java Collections Framework / Iterators / The lamborne Package: A Supplement to the Java Collections / Choosing the Right Collection / Case Study 7.1: Student Test Scores Again 8. STACKS Overview of Stacks / Stack Implementation / Stacks and Recursion / Case Study 8.1: Matching Parentheses / A More Professional Approach to Stacks / Case Study 8.2: Evaluating Postfix Expressions / Case Study 8.3: Converting Infix Expressions to Postfix Expressions 9. QUEUES Overview of Queues / Queue Implementations / Case Study 9.1: Simulating a Supermarket Checkout Line / Priority Queues. (Part contents)
by "Nielsen BookData"