Data Structures and Algorithms in Java - Michael T. Goodrich, Roberto Tamassia

Data Structures and Algorithms in Java

Buch | Hardcover
736 Seiten
2010 | 5th Revised edition
John Wiley & Sons Ltd (Verlag)
978-0-470-38326-1 (ISBN)
173,88 inkl. MwSt
zur Neuauflage
  • Titel erscheint in neuer Auflage
  • Artikel merken
Zu diesem Artikel existiert eine Nachauflage
Features the fresh information on Java JDK 1.6. This title examines fundamental data structures by following a consistent object-oriented framework that builds intuition and analysis skills of data structures and algorithms. It is suitable for software engineers.
This newest edition examines fundamental data structures by following a consistent object-oriented framework that builds intuition and analysis skills of data structures and algorithms. It presents new figures, simpler language, and more practical motivations from real-world scenarios. It contains numerous illustrations, Web-based animations, and simplified mathematical analyses help readers quickly learn important concepts.

Professors Goodrich and Tamassia are well-recognized researchers in data structures and algorithms. Michael Goodrich received his Ph.D. in Computer Science from Purdue University. He is currently a professor in the Department of Computer Science at the University of California, Irvine. Roberto Tamassia received his Ph.D. in Electrical and Computer Engineering from the University of Illinois at Urbana-Champaign. He is currently a professor in the Department Science at Brown University. Both professors are winners of numerous teaching awards for their teaching of data structures and algorithms.

1 Java Primer. 1.1 Getting Started: Classes, Types, and Objects. 1.2 Methods. 1.3 Expressions. 1.4 Control Flow. 1.5 Arrays. 1.6 Simple Input and Output. 1.7 An Example Program. 1.8 Nested Classes and Packages. 1.9 Writing a Java Program. 1.10 Exercises. 2 Object-Oriented Design. 2.1 Goals, Principles, and Patterns. 2.2 Inheritance and Polymorphism. 2.3 Exceptions. 2.4 Interfaces and Abstract Classes. 2.5 Casting and Generics. 2.6 Exercises. 3 Indices, Nodes, and Recursion. 3.1 Using Arrays. 3.2 Singly Linked Lists. 3.3 Doubly Linked Lists. 3.4 Circularly Linked Lists and Linked-List Sorting. 3.5 Recursion. 3.6 Exercises. 4 Analysis Tools. 4.1 The Seven Functions Used in This Book. 4.2 Analysis of Algorithms. 4.3 Simple Justification Techniques. 4.4 Exercises. 5 Stacks, Queues, and Deques. 5.1 Stacks. 5.2 Queues. 5.3 Double-Ended Queues. 5.4 Exercises. 6 List and Iterator ADTs. 6.1 Array Lists. 6.2 Node Lists. 6.3 Iterators. 6.4 List ADTs and the Collections Framework. 6.5 Case Study: The Move-to-Front Heuristic. 6.6 Exercises. 7 Trees. 7.1 General Trees. 7.2 Tree Traversal Algorithms. 7.3 Binary Trees. 7.4 Exercises. 8 Heaps and Priority Queues. 8.1 The Priority Queue Abstract Data Type. 8.2 Implementing a Priority Queue with a List. 8.3 Heaps. 8.4 Adaptable Priority Queues. 8.5 Exercises. 9 Hash Tables, Maps, and Skip Lists. 9.1 Maps. 9.2 Hash Tables. 9.3 Ordered Maps. 9.4 Skip Lists. 9.5 Dictionaries. 9.6 Exercises. 10 Search Trees. 10.1 Binary Search Trees. 10.2 AVL Trees. 10.3 Splay Trees. 10.4 (2,4) Trees. 10.5 Red-Black Trees. 10.6 Exercises. 11 Sorting, Sets, and Selection. 11.1 Merge-Sort. 11.2 Quick-Sort. 11.3 Studying Sorting through an Algorithmic Lens. 11.4 Sets and Union/Find Structures. 11.5 Selection. 11.6 Exercises. 12 Strings and Dynamic Programming. 12.1 String Operations. 12.2 Dynamic Programming. 12.3 Pattern Matching Algorithms. 12.4 Text Compression and the Greedy Method. 12.5 Tries. 12.6 Exercises. 13 Graph Algorithms. 13.1 Graphs. 13.2 Data Structures for Graphs. 13.3 Graph Traversals. 13.4 Directed Graphs. 13.5 Shortest Paths. 13.6 Minimum Spanning Trees. 13.7 Exercises. 14 Memory Management and B-Trees. 14.1 Memory Management. 14.2 External Memory and Caching. 14.3 External Searching and B-Trees. 14.4 External-Memory Sorting. 14.5 Exercises. A Useful Mathematical Facts. Bibliography. Index.

Zusatzinfo Illustrations
Verlagsort Chichester
Sprache englisch
Maße 199 x 234 mm
Gewicht 1201 g
Themenwelt Informatik Programmiersprachen / -werkzeuge Java
Mathematik / Informatik Informatik Web / Internet
ISBN-10 0-470-38326-7 / 0470383267
ISBN-13 978-0-470-38326-1 / 9780470383261
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