Zum Hauptinhalt springen
Dekorationsartikel gehören nicht zum Leistungsumfang.
Data Structures and Algorithms in C++
Taschenbuch von Michael T Goodrich (u. a.)
Sprache: Englisch

221,95 €*

inkl. MwSt.

Versandkostenfrei per Post / DHL

Lieferzeit 1-2 Wochen

Kategorien:
Beschreibung
This second edition of Data Structures and Algorithms in C++ is designed to provide an introduction to data structures and algorithms, including their design, analysis, and implementation. The authors offer an introduction to object-oriented design with C++ and design patterns, including the use of class inheritance and generic programming through class and function templates, and retain a consistent object-oriented viewpoint throughout the book.

This is a "sister" book to Goodrich & Tamassia's Data Structures and Algorithms in Java, but uses C++ as the basis language instead of Java. This C++ version retains the same pedagogical approach and general structure as the Java version so schools that teach data structures in both C++ and Java can share the same core syllabus.

In terms of curricula based on the IEEE/ACM 2001 Computing Curriculum, this book is appropriate for use in the courses CS102 (I/O/B versions), CS103 (I/O/B versions), CS111 (A version), and CS112 (A/I/O/F/H versions).
This second edition of Data Structures and Algorithms in C++ is designed to provide an introduction to data structures and algorithms, including their design, analysis, and implementation. The authors offer an introduction to object-oriented design with C++ and design patterns, including the use of class inheritance and generic programming through class and function templates, and retain a consistent object-oriented viewpoint throughout the book.

This is a "sister" book to Goodrich & Tamassia's Data Structures and Algorithms in Java, but uses C++ as the basis language instead of Java. This C++ version retains the same pedagogical approach and general structure as the Java version so schools that teach data structures in both C++ and Java can share the same core syllabus.

In terms of curricula based on the IEEE/ACM 2001 Computing Curriculum, this book is appropriate for use in the courses CS102 (I/O/B versions), CS103 (I/O/B versions), CS111 (A version), and CS112 (A/I/O/F/H versions).
Über den Autor

Michael Goodrich received his Ph.D. in computer science from Purdue University in 1987. He is currently a professor in the Department of Computer Science at University of California, Irvine. Previously, he was a professor at Johns Hopkins University. He is an editor for the International Journal of Computational Geometry & Applications and Journal of Graph Algorithms and Applications.

Roberto Tamassia received his Ph.D. in Electrical and Computer Engineering from the University of Illinois at Urbana-Champaign in 1988. He is currently a professor in the Department of Computer Science at Brown University. He is editor-in-chief for the Journal of Graph Algorithms and Applications and an editor for Computational Geometry: Theory and Applications. He previously served on the editorial board of IEEE Transactions on Computers.

Inhaltsverzeichnis
1. A C++ Primer.

1.1 Basic C++ Programming Elements.

1.2 Expressions.

1.3 Control Flow.

1.4 Functions.

1.5 Classes.

1.6 C++ Program and File Organization.

1.7 Writing a C++ Program.

1.8 Exercises.

2. Object-Oriented Design.

2.1 Goals, Principles, and Patterns.

2.2 Inheritance and Polymorphism.

2.3 Templates.

2.4 Exceptions.

2.5 Exercises.

3. Arrays, Linked Lists, and Recursion.

3.1 Using Arrays.

3.2 Singly Linked Lists.

3.3 Doubly Linked Lists.

3.4 Circularly Linked and List Reversal.

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 Vectors.

6.2 Lists.

6.3 Sequences.

6.4 Case Study: Bubble-Sort on a Sequence.

6.5 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 and 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.
Details
Erscheinungsjahr: 2011
Fachbereich: Programmiersprachen
Genre: Informatik
Rubrik: Naturwissenschaften & Technik
Medium: Taschenbuch
ISBN-13: 9780470383278
ISBN-10: 0470383275
Sprache: Englisch
Einband: Kartoniert / Broschiert
Autor: Goodrich, Michael T
Tamassia, Roberto
Mount, David M
Auflage: 2nd edition
Hersteller: Wiley
Maße: 233 x 189 x 30 mm
Von/Mit: Michael T Goodrich (u. a.)
Erscheinungsdatum: 22.02.2011
Gewicht: 1,023 kg
Artikel-ID: 101833662
Über den Autor

Michael Goodrich received his Ph.D. in computer science from Purdue University in 1987. He is currently a professor in the Department of Computer Science at University of California, Irvine. Previously, he was a professor at Johns Hopkins University. He is an editor for the International Journal of Computational Geometry & Applications and Journal of Graph Algorithms and Applications.

Roberto Tamassia received his Ph.D. in Electrical and Computer Engineering from the University of Illinois at Urbana-Champaign in 1988. He is currently a professor in the Department of Computer Science at Brown University. He is editor-in-chief for the Journal of Graph Algorithms and Applications and an editor for Computational Geometry: Theory and Applications. He previously served on the editorial board of IEEE Transactions on Computers.

Inhaltsverzeichnis
1. A C++ Primer.

1.1 Basic C++ Programming Elements.

1.2 Expressions.

1.3 Control Flow.

1.4 Functions.

1.5 Classes.

1.6 C++ Program and File Organization.

1.7 Writing a C++ Program.

1.8 Exercises.

2. Object-Oriented Design.

2.1 Goals, Principles, and Patterns.

2.2 Inheritance and Polymorphism.

2.3 Templates.

2.4 Exceptions.

2.5 Exercises.

3. Arrays, Linked Lists, and Recursion.

3.1 Using Arrays.

3.2 Singly Linked Lists.

3.3 Doubly Linked Lists.

3.4 Circularly Linked and List Reversal.

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 Vectors.

6.2 Lists.

6.3 Sequences.

6.4 Case Study: Bubble-Sort on a Sequence.

6.5 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 and 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.
Details
Erscheinungsjahr: 2011
Fachbereich: Programmiersprachen
Genre: Informatik
Rubrik: Naturwissenschaften & Technik
Medium: Taschenbuch
ISBN-13: 9780470383278
ISBN-10: 0470383275
Sprache: Englisch
Einband: Kartoniert / Broschiert
Autor: Goodrich, Michael T
Tamassia, Roberto
Mount, David M
Auflage: 2nd edition
Hersteller: Wiley
Maße: 233 x 189 x 30 mm
Von/Mit: Michael T Goodrich (u. a.)
Erscheinungsdatum: 22.02.2011
Gewicht: 1,023 kg
Artikel-ID: 101833662
Warnhinweis

Ähnliche Produkte

Ähnliche Produkte