Data Structures and Algorithms in C++, 2/e (Paperback)
暫譯: C++ 資料結構與演算法(第二版)

Michael T. Goodrich, Roberto Tamassia, David M. Mount

  • 出版商: Wiley
  • 出版日期: 2011-02-22
  • 定價: $2,400
  • 售價: 9.8$2,352
  • 語言: 英文
  • 頁數: 744
  • 裝訂: Paperback
  • ISBN: 0470383275
  • ISBN-13: 9780470383278
  • 相關分類: C++ 程式語言Algorithms-data-structures
  • 立即出貨 (庫存 < 3)

買這商品的人也買了...

商品描述

<內容簡介>

Description
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).

Features

  Consistent object-oriented viewpoint throughout the book.

  Detailed explanation and visualization of sorting algorithms.

  Coverage of graph algorithms and pattern-matching algorithms for more advanced CS2 courses.

  Visual justifications (that is, picture proofs), which make mathematical arguments more understandable for students, appealing to visual learners.

  Motivation of algorithmic concepts with Internet-related applications, such as Web browsers and search engines.

  Accompanying web site with a special password-protected area for instructors.

New to This Edition

  Enhanced consistency with the C++ Standard Template Library (STL), and expanded usage of STL data structures as a basis for designing more complex data structures.

  Improved consistency with modern C++ coding standards in presenting code fragments.

  Simplification of many of the code fragments, focusing on the principal structure and functionality of the data structures.

  More examples and discussion of data structure and algorithm analysis.

  Enhanced the discussion of algorithmic design techniques, like dynamic programming and the greedy method.

<章節目錄>

1. A C++ Primer.
2. Object-Oriented Design.
3. Arrays, Linked Lists, and Recursion.
4. Analysis Tools.
5. Stacks, Queues, and Deques.
6. List and Iterator ADTs.
7. Trees.
8. Heaps and Priority Queues.
9. Hash Tables, Maps, and Skip Lists.
10. Search Trees.
11. Sorting, Sets, and Selection.
12. Strings and Dynamic Programming.
13. Graph Algorithms.
14. Memory Management and B-Trees.

商品描述(中文翻譯)

內容簡介
**描述**
本書的**第二版《C++中的資料結構與演算法》**旨在介紹資料結構與演算法,包括其設計、分析和實作。作者提供了C++的物件導向設計及設計模式的介紹,包括使用類別繼承和透過類別及函數模板的泛型程式設計,並在整本書中保持一致的物件導向觀點。

這本書是Goodrich與Tamassia的《Java中的資料結構與演算法》的「姊妹書」,但使用C++作為基礎語言,而非Java。這個C++版本保留了與Java版本相同的教學方法和一般結構,因此教授C++和Java資料結構的學校可以共享相同的核心課程大綱。

根據IEEE/ACM 2001計算課程的課程設計,本書適合用於CS102(I/O/B版本)、CS103(I/O/B版本)、CS111(A版本)和CS112(A/I/O/F/H版本)的課程。

**特點**
- 整本書保持一致的物件導向觀點。
- 對排序演算法進行詳細解釋和可視化。
- 涵蓋圖形演算法和模式匹配演算法,適用於更高級的CS2課程。
- 提供視覺證明(即圖片證明),使數學論證對學生更易理解,吸引視覺學習者。
- 以與網際網路相關的應用(如網頁瀏覽器和搜尋引擎)來激發演算法概念。
- 附有網站,並為教師提供特殊的密碼保護區域。

**本版新特點**
- 與C++標準模板庫(STL)增強一致性,並擴大STL資料結構的使用,以設計更複雜的資料結構。
- 在呈現程式碼片段時,改善與現代C++編碼標準的一致性。
- 簡化許多程式碼片段,專注於資料結構的主要結構和功能。
- 增加資料結構和演算法分析的範例和討論。
- 加強對演算法設計技術的討論,如動態規劃和貪婪法。

章節目錄
1. C++入門。
2. 物件導向設計。
3. 陣列、鏈結串列與遞迴。
4. 分析工具。
5. 堆疊、佇列與雙端佇列。
6. 列表與迭代器ADT。
7. 樹。
8. 堆與優先佇列。
9. 雜湊表、映射與跳躍列表。
10. 搜尋樹。
11. 排序、集合與選擇。
12. 字串與動態規劃。
13. 圖形演算法。
14. 記憶體管理與B樹。