資料結構
- 程式規格、設計、與分析
Program Specification,Design and Analysis.
1.1 Specification and Design
1.2 Running the analysis
1.3 Testing and Debugging
1.4 抽象資料型別與 C++ 的類別
- 容器類別
Container Classes
2.1 The Bag ADT
2.2 Programming Project: The List ADT
- 指標與動態陣列
Pointer and Dynamic Arrays
3.1 Pointer and Dynamic memory.
3.2 Pointers and Arrays as parameters.
3.3 The Bag ADT with a dynamic array.
3.4 Prescription for a dynamic class.
3.5 Programming project -- The String ADT.
- 鏈結串列
Linked Lists
4.1 Fundamentals of Linked Lists
4.2 A Linked List Tookit: a clollection of linked list function
4.3 The Bag ADT with a linked list
4.4 Programming project:The List ADT with a Linked List.
4.5 Dynamic Arrays v.s. linked lists v.s. doubly linked lists.
- 以模板達成程式碼再運用
Software Reuse with Templates
5.1 Template functions
5.2 Template functions in a Toolkit.
5.3 Template Classes.
5.4 Using template in the linked list toolkit
5.5 The Bag template class with a linked list
- 堆疊
Stacks
6.1 Introduction to Stacks.
6.2 Stack Applications .
6.3 Implementations of the stack ADT.
6.4 More Complex Stack Applications
- 佇列
Queues
7.1 Introduction to Queues.
7.2 Queue Applications.
7.3 Implementations of the queue ADT.
7.4 Priority Queues
- 遞迴式的思考
Recursive Thinking
8.1 Recursive Functions
- 樹狀結構
Trees
9.1 Introduction to trees
9.2 Tree Representation
9.3 A Toolkit for binary tree nodes
9.4 Tree Traversale : procedivre to process all the nodes in a tree
9.5 Binary Search Tree
- 累堆結構
Heap
10.1 Heap
10.2 B-Trees
10.3 Trees, Logs, and time Analysis
- 搜尋
Searching
11.1 Serial search and Binary Search.
11.2 Open-Addres Hashing.
11.3 Chained Hashing.
11.4 Time analysis of hashing.
- 排序
Sorting
12.1 Quadritic 排序演算法
12.2 遞迴式的排序演算法
[back]