Data Abstraction and Problem Solving with Java: United States Edition
Autor Frank Carrano, Janet Pricharden Limba Engleză Paperback – 18 oct 2005
Preț: 486.95 lei
Preț vechi: 559.71 lei
-13% Nou
Puncte Express: 730
Preț estimativ în valută:
93.24€ • 96.08$ • 78.25£
93.24€ • 96.08$ • 78.25£
Carte indisponibilă temporar
Doresc să fiu notificat când acest titlu va fi disponibil:
Se trimite...
Preluare comenzi: 021 569.72.76
Specificații
ISBN-13: 9780321304285
ISBN-10: 0321304284
Pagini: 912
Dimensiuni: 187 x 232 x 27 mm
Greutate: 1.29 kg
Ediția:2Nouă
Editura: Pearson Education
Colecția Prentice Hall
Locul publicării:Upper Saddle River, United States
ISBN-10: 0321304284
Pagini: 912
Dimensiuni: 187 x 232 x 27 mm
Greutate: 1.29 kg
Ediția:2Nouă
Editura: Pearson Education
Colecția Prentice Hall
Locul publicării:Upper Saddle River, United States
Cuprins
PART ONE - Problem-Solving Techniques
1 Review of Java Fundamentals
1.1 Program Structure
1.2 Language Basics
1.3 Selection Statements
1.4 Iteration Statements
1.5 Useful Java Classes
1.6 Java Exceptions
1.7 Text Input and Output
1.8 File Input and Output
2 Principles of Programming and Software Engineering
2.1 Problem Solving and Software Engineering
2.2 Achieving an Object-Oriented Design
2.3 A Summary of Key Issues in Programming
3 Recursion: The Mirrors
3.1 Recursive Solutions
3.2 Counting Things
3.3 Searching an Array
3.4 Organizing Data
3.5 Recursion and Efficiency
4 Data Abstraction: The Walls
4.1 Abstract Data Types
4.2 Specifying ADTs
4.3 Implementing ADTs
5 Linked Lists
5.1 Preliminaries
5.2 Programming with Linked Lists
5.3 Variations of the Linked List
5.4 Application: Maintaining an Inventory
5.5 The Java Collections Framework
PART TWO - Problem Solving with Abstract Data Types
6 Recursion as a Problem-Solving Technique
6.1 Backtracking
6.2 Defining Languages
6.3 The Relationship Between Recursion and Mathematical Induction
7 Stacks
7.1 The Abstract Data Type Stack
7.2 Simple Applications of the ADT Stack
7.3 Implementations of the ADT Stack
7.4 Application: Algebraic Expressions
7.5 Application: A Search Problem
7.6 The Relationship Between Stacks and Recursion
8 Queues
8.1 The Abstract Data Type Queue
8.2 Simple Applications of the ADT Queue
8.3 Implementations of the ADT Queue
8.4 A Summary of Position-Oriented ADTs
8.5 Application: Simulation
9 Advanced Java Topics
9.1 Inheritance Revisited
9.2 Dynamic Binding and Abstract Classes
9.3 The ADTs List and Sorted List Revisited
9.4 Java Generics
9.5 Iterators
10 Algorithm Efficiency and Sorting
10.1 Measuring the Efficiency of Algorithms
10.2 Sorting Algorithms and Their EfficiencySelection Sort
11 Trees
11.1 Terminology
11.2 The ADT Binary Tree
11.3 The ADT Binary Search Tree
11.4 General Trees
12 Tables and Priority Queues
12.1 The ADT Table
12.2 The ADT Priority Queue: A Variation of the ADT Table
12.3 Tables and Priority Queues in the JCF
13 Advanced Implementations of Tables
13.1 Balanced Search Trees
13.2 Hashing
13.3 Data with Multiple Organizations
14 Graphs
14.1 Terminology
14.2 Graphs as ADTs
14.3 Graph Traversals
14.4 Applications of Graphs
15 External Methods
15.1 A Look at External Storage
15.2 Sorting Data in an External File
15.3 External Tables
APPENDICES
A A Comparison of Java to C++
B Unicode Character Codes (ASCII Subset)
C Java Resources
D Mathematical Induction 828
Glossary
Answers to Self-Test Exercises
Index
1 Review of Java Fundamentals
1.1 Program Structure
1.2 Language Basics
1.3 Selection Statements
1.4 Iteration Statements
1.5 Useful Java Classes
1.6 Java Exceptions
1.7 Text Input and Output
1.8 File Input and Output
2 Principles of Programming and Software Engineering
2.1 Problem Solving and Software Engineering
2.2 Achieving an Object-Oriented Design
2.3 A Summary of Key Issues in Programming
3 Recursion: The Mirrors
3.1 Recursive Solutions
3.2 Counting Things
3.3 Searching an Array
3.4 Organizing Data
3.5 Recursion and Efficiency
4 Data Abstraction: The Walls
4.1 Abstract Data Types
4.2 Specifying ADTs
4.3 Implementing ADTs
5 Linked Lists
5.1 Preliminaries
5.2 Programming with Linked Lists
5.3 Variations of the Linked List
5.4 Application: Maintaining an Inventory
5.5 The Java Collections Framework
PART TWO - Problem Solving with Abstract Data Types
6 Recursion as a Problem-Solving Technique
6.1 Backtracking
6.2 Defining Languages
6.3 The Relationship Between Recursion and Mathematical Induction
7 Stacks
7.1 The Abstract Data Type Stack
7.2 Simple Applications of the ADT Stack
7.3 Implementations of the ADT Stack
7.4 Application: Algebraic Expressions
7.5 Application: A Search Problem
7.6 The Relationship Between Stacks and Recursion
8 Queues
8.1 The Abstract Data Type Queue
8.2 Simple Applications of the ADT Queue
8.3 Implementations of the ADT Queue
8.4 A Summary of Position-Oriented ADTs
8.5 Application: Simulation
9 Advanced Java Topics
9.1 Inheritance Revisited
9.2 Dynamic Binding and Abstract Classes
9.3 The ADTs List and Sorted List Revisited
9.4 Java Generics
9.5 Iterators
10 Algorithm Efficiency and Sorting
10.1 Measuring the Efficiency of Algorithms
10.2 Sorting Algorithms and Their EfficiencySelection Sort
11 Trees
11.1 Terminology
11.2 The ADT Binary Tree
11.3 The ADT Binary Search Tree
11.4 General Trees
12 Tables and Priority Queues
12.1 The ADT Table
12.2 The ADT Priority Queue: A Variation of the ADT Table
12.3 Tables and Priority Queues in the JCF
13 Advanced Implementations of Tables
13.1 Balanced Search Trees
13.2 Hashing
13.3 Data with Multiple Organizations
14 Graphs
14.1 Terminology
14.2 Graphs as ADTs
14.3 Graph Traversals
14.4 Applications of Graphs
15 External Methods
15.1 A Look at External Storage
15.2 Sorting Data in an External File
15.3 External Tables
APPENDICES
A A Comparison of Java to C++
B Unicode Character Codes (ASCII Subset)
C Java Resources
D Mathematical Induction 828
Glossary
Answers to Self-Test Exercises
Index
Textul de pe ultima copertă
Data Structures/Java
Data Abstraction and Problem Solving with Java, 2/E
Frank M. Carrano, University of Rhode Island
Janet Prichard, Bryant University
ISBN: 0321304284
The Second Edition of Data Abstraction and Problem Solving with Java: Walls and Mirrors, presents fundamental problem-solving and object-oriented programming skills by focusing on data abstraction (the Walls) and recursion (the Mirrors). It is fully revised to use the latest version of the Java programming language (Java 5.0). Java 5.0 is particularly well suited for presenting object-oriented programming, and helps enhances this edition’s increased focus on object-oriented programming and data abstraction. Clear, accessible writing is complimented by a pedagogically rich presentation throughout this textbook.
The Second Edition includes:
“This book stands out as one of the best data structures books I have ever seen. It offers fine coverage of data structures and problem-solving techniques, and presents material in an elegant way that students can easily understand.”
Eric Jiang, University of San Diego
"Data Abstraction and Problem Solving with Java: Walls and Mirrors is an effective tool for introducing students to systematic solution design and lucid programming style. Walls and Mirrors makes teaching simpler and learning easier through its clear explanation of concepts, elaborate illustrative examples, and wide-ranging selection of problems."
Sandip Sen, The University of Tulsa
“The strength of Data Abstraction and Problem Solving with Java: Walls and Mirrors lies in its systematic approach to developing problem solving and programming skills. It provides clear, effective coverage of the fundamentals of software development.”
Chakib Chraibi, Barry University
Data Abstraction and Problem Solving with Java, 2/E
Frank M. Carrano, University of Rhode Island
Janet Prichard, Bryant University
ISBN: 0321304284
The Second Edition of Data Abstraction and Problem Solving with Java: Walls and Mirrors, presents fundamental problem-solving and object-oriented programming skills by focusing on data abstraction (the Walls) and recursion (the Mirrors). It is fully revised to use the latest version of the Java programming language (Java 5.0). Java 5.0 is particularly well suited for presenting object-oriented programming, and helps enhances this edition’s increased focus on object-oriented programming and data abstraction. Clear, accessible writing is complimented by a pedagogically rich presentation throughout this textbook.
The Second Edition includes:
- Early and expanded attention to learning the Java language
- Fully updated Java code and UML notation used for all psuedocode
- Coverage of advances in Java 5.0 such as generic types, iterators, and the Java Collections Framework
- Examples that illustrate the role of classes and ADTs in the problem-solving process
“This book stands out as one of the best data structures books I have ever seen. It offers fine coverage of data structures and problem-solving techniques, and presents material in an elegant way that students can easily understand.”
Eric Jiang, University of San Diego
"Data Abstraction and Problem Solving with Java: Walls and Mirrors is an effective tool for introducing students to systematic solution design and lucid programming style. Walls and Mirrors makes teaching simpler and learning easier through its clear explanation of concepts, elaborate illustrative examples, and wide-ranging selection of problems."
Sandip Sen, The University of Tulsa
“The strength of Data Abstraction and Problem Solving with Java: Walls and Mirrors lies in its systematic approach to developing problem solving and programming skills. It provides clear, effective coverage of the fundamentals of software development.”
Chakib Chraibi, Barry University
Caracteristici
- The Classic Walls & Mirrors approach which instills the use of both abstraction (the walls) and recursion(the mirrors) to design solutions to problems
- Completely revised code to be compatible with Java 5.0, including coverage of generic types
- Early(chapter 1) and expanded review of the java language
- Concentrates on the core data abstraction and data structure topics
- Contains examples that illustrate the role of classes and ADTs in the problem-solving process
- Includes carefully designed, student-friendly pedagogy, including margin notes, key concept boxes, error and misconception warnings, and self-test exercises with answers
Caracteristici noi
- Completely revised code to be compatible with Java 5.0, including coverage of generic types
- Earlier introduction (chapter 1) and extended review of Java
- All the pseudocode in the text uses UML notation
- Generics and iterators added; starting in chapter 9 then used in following chapter
- The Java Collecitons Framework(JCF) added in discussion of Lists, Stacks, Queues, Hash tables and Priority Queues
- Updated presentation of sorting and searching algorithms as found in the JCF