Java Software Structures - John Lewis, Joseph Chase

Java Software Structures

Designing and Using Data Structures: International Edition
Buch | Softcover
576 Seiten
2009 | 3rd edition
Pearson (Verlag)
978-0-13-136427-1 (ISBN)
77,95 inkl. MwSt
zur Neuauflage
  • Titel erscheint in neuer Auflage
  • Artikel merken
Zu diesem Artikel existiert eine Nachauflage
The third edition of Java Software Structures embraces the enhancements of the latest version of Java (Java 6, as well as Java 5), where all structures and collections are based on generics. The framework of the text walks the reader through three main areas: conceptualization, explanation, and implementation, allowing for a consistent and coherent introduction to data structures. Readers learn how to develop high-quality software systems using well-designed collections and algorithms.

1. Introduction
1.1 Software Quality
1.2 Data Structures

2. Analysis of Algorithms
2.1 Algorithm Efficiency
2.2 Growth Functions and Big-OH Notation
2.3 Comparing Growth Functions
2.4 Determining Time Complexity

3. Collections
3.1 Introduction to Collections
3.2 Stack Collection
3.3 Crucial OO Concepts
3.4 A Stack ADT
3.5 Using Stacks: Evaluating Postfix Expressions
3.6 Exceptions
3.7 Implementing a Stack: With Arrays
3.8 The ArrayStack Class

4. Linked Structures
4.1 References as Links
4.2 Managing Linked Lists
4.3 Elements Without Links
4.4 Implementing a Stack
4.5 Using Stacks: Traversing a Maze
4.6 Implementing Stacks: The java.util.Stack Class

5. Queues
5.1 A Queue ADT
5.2 Using Queues: Code Keys
5.3 Using Queues: Ticket Counter Simulation
5.4 Implementing Queues: With Links
5.5 Implementing Queues: With Arrays

6. Lists
6.1 A List ADT
6.2 Using Ordered Lists: Tournament Maker
6.3 Using Indexed Lists: The Josephus Problem
6.4 Implementing Lists: With Arrays
6.5 Implementing Lists: With Links
6.6 Lists in the Java Collections API

7. Recursion
7.1 Recursive Thinking
7.2 Recursive Programming
7.3 Using Recursion
7.4 Analyzing Recursive Algorithms

8. Sorting and Searching
8.1 Searching
8.2 Sorting
8.3 Radix Sort

9. Trees
9.1 Trees
9.2 Strategies for Implementing Trees
9.3 Tree Traversals
9.4 A Binary Tree ADT
9.5 Using Binary Trees: Expression Trees
9.6 Implementing Binary Trees with Links
9.7 Implementing Binary Trees with Arrays

10. Binary Search Trees
10.1 A Binary Search Tree
10.2 Implementing Binary Search Trees: With Links
10.3 Implementing Binary Search Trees: With Arrays
10.4 Using Binary Search Trees: Implementing Ordered Lists
10.5 Balanced Binary Search Trees
10.6 Implementing Binary Search Trees: AVL Trees
10.7 Implementing Binary Search Trees: Red/Black Trees
10.8 Implementing Binary Search Trees: The Java Collections API
10.9 A Philosophical Quandary

11. Priority Queues & Heaps
11.1 A Heap
11.2 Using Heaps: Priority Queues
11.3 Implementing Heaps: With Links
11.4 Implementing Heaps: With Arrays
11.5 Using Heaps: Heap Sort

12. Multi-way Search Trees
12.1 Combing Tree Concepts
12.2 2-3 Trees
12.3 2-4 Trees
12.4 B-Trees
12.5 Implementation Strategies for B-Trees

13. Graphs
13.1 Undirected Graphs
13.2 Directed Graphs
13.3 Networks
13.4 Common Graph Algorithms
13.5 Strategies for Implementing Graphs
13.6 Implementing Undirected Graphs with an Adjacency Matrix

14. Hashing
14.1 Hashing
14.2 Hashing Functions
14.3 Resolving Collisions
14.4 Deleting Elements from a Hash Table
14.5 Hash Tables in the Java Collections API

15. Sets & Maps
15.1 A Set Collection
15.2 Using a Set: Bingo
15.3 Implementing a Set: With Arrays
15.4 Implementing a Set: With Links
15.5 Maps and the Java Collections API

Appendix A – UML
Appendix B – Object-Oriented Design
B.1 Overview of Object-Orientation
B.2 Using Objects
B.3 Class Libraries and Packages
B.4 State and Behavior
B.5 Classes
B.6 Encapsulation
B.7 Constructors
B.8 Method Overloading
B.9 References Revisited
B.10 The static Modifier
B.11 Wrapper Classes
B.12 Interfaces
B.13 Inheritance
B.14 Class Hierarchies
B.15 Polymorphism
B.16 Generic Types
B.17 Exceptions

Erscheint lt. Verlag 7.5.2009
Sprache englisch
Maße 231 x 185 mm
Gewicht 850 g
Themenwelt Informatik Programmiersprachen / -werkzeuge Java
Mathematik / Informatik Informatik Web / Internet
ISBN-10 0-13-136427-8 / 0131364278
ISBN-13 978-0-13-136427-1 / 9780131364271
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
mit über 150 Workouts in Java und Python

von Luigi Lo Iacono; Stephan Wiefling; Michael Schneider

Buch (2023)
Carl Hanser (Verlag)
29,99
Einführung, Ausbildung, Praxis

von Christian Ullenboom

Buch | Hardcover (2023)
Rheinwerk (Verlag)
49,90