《數據結構——用C語言描述(第2版)》是由耿國華,張德同,周明全等編著,高等教育出版社出版的“十二五”普通高等教育本科國家級規劃教材,既可作為高等學校計算機及相關專業數據結構課程的教材,也可供從事計算機套用開發的工程技術人員參考使用。
全書共10章,內容包括:基本概念、基本結構(線性表、棧與佇列、串、數組與廣義表、樹、圖)和基本技術(查找方法與排序方法)三大部分。
基本介紹
- 書名:數據結構——用C語言描述(第2版)
- 作者:耿國華,張德同,周明全等
- ISBN:978-7-04-043305-0
- 類別:“十二五”普通高等教育本科國家級規劃教材
- 頁數:362頁
- 出版社:高等教育出版社
- 出版時間:2015-07-22
- 字數:520千字
成書過程
修訂情況
出版工作
策劃編輯 | 責任編輯 | 封面設計 | 責任印製 |
---|---|---|---|
倪文慧 | 倪文慧 | 張志 | 趙義民 |
內容簡介
教材目錄
前言 | 6.3.3基於棧的遞歸消除 |
第1章緒論 | 6.3.4線索二叉樹 |
1.1數據結構的基礎概念 | 6.3.5由遍歷序列確定二叉樹 |
1.2數據結構的內容 | 6.4樹?森林和二叉樹的關係 |
1.3算法 | 6.4.1樹的存儲結構 |
1.4算法描述 | 6.4.2樹?森林與二叉樹的相互轉換 |
1.5算法性能評價 | 6.4.3樹與森林的遍歷 |
1.5.1算法的時間性能分析 | 6.5哈夫曼樹及其套用 |
1.5.2算法的空間性能分析 | 6.5.1哈夫曼樹 |
1.5.3算法性能選擇 | 6.5.2哈夫曼編碼 |
1.6數據結構與C語言表示 | 6.6並查集與等價類劃分 |
1.6.1數據結構與程式設計的關聯性 | 6.7總結與提高 |
1.6.2結構化程式設計與函式的模組化 | 6.7.1主要知識點 |
1.6.3面向對象與抽象數據類型 | 6.7.2典型題例 |
1.6.4算法描述規範與設計風格 | 習題 |
1.7關於學習數據結構 | 實習題 |
1.8總結與提高 | 第7章圖 |
習題 | 7.1圖的定義與基本術語 |
實習題 | 7.1.1圖的定義 |
第2章線性表 | 7.1.2基本術語 |
2.1線性表的概念及其抽象數據類型定義 | 7.2圖的存儲結構 |
2.1.1線性表的邏輯結構 | 7.2.1鄰接矩陣表示法 |
2.1.2線性表的抽象數據類型定義 | 7.2.2鄰接表表示法 |
2.2線性表的順序存儲 | 7.2.3十字鍊表 |
2.2.1線性表的順序存儲結構 | 7.2.4鄰接多重表 |
2.2.2線性表順序存儲結構上的基本運算 | 7.3圖的遍歷 |
2.3線性表的鏈式存儲 | 7.3.1深度優先搜尋 |
2.3.1單鍊表 | 7.3.2廣度優先搜尋 |
2.3.2單鍊表上的基本運算 | 7.4圖的套用 |
2.3.3循環鍊表 | 7.4.1圖的連通性問題 |
2.3.4雙向鍊表 | 7.4.2有向無環圖的套用 |
2.3.5靜態鍊表 | 7.4.3最短路徑問題 |
2.4線性表套用——一元多項式的表示及相加 | 7.5總結與提高 |
2.5順序表與鍊表的綜合比較 | 7.5.1主要知識點 |
2.5.1順序表和鍊表的比較 | 7.5.2典型題例 |
2.5.2線性表鏈式存儲方式的比較 | 習題 |
2.6總結與提高 | 實習題 |
2.6.1主要知識點 | 第8章查找 |
2.6.2典型題例 | 8.1查找的基本概念 |
習題 | 8.2基於線性表的查找法 |
實習題 | 8.2.1順序查找法 |
第3章限定性線性表——棧與佇列 | 8.2.2折半查找法 |
3.1棧 | 8.2.3分塊查找法 |
3.1.1棧的定義 | 8.3基於樹的查找法 |
3.1.2棧的表示和實現 | 8.3.1二叉排序樹 |
3.1.3棧的套用舉例 | 8.3.2平衡二叉排序樹 |
3.1.4棧與遞歸的實現 | 8.3.3B樹 |
3.2佇列 | 8.4計算式查找法——哈希法 |
3.2.1佇列的定義 | 8.4.1哈希函式的構造方法 |
3.2.2佇列的表示和實現 | 8.4.2處理衝突的方法 |
3.2.3佇列的套用舉例 | 8.4.3哈希表的查找過程 |
3.3總結與提高 | 8.4.4哈希法性能分析 |
3.3.1主要知識點 | 8.5總結與提高 |
3.3.2典型題例 | 8.5.1主要知識點 |
習題 | 8.5.2典型題例 |
實習題 | 習題 |
第4章串 | 實習題 |
4.1串的基本概念 | 第9章內部排序 |
4.2串的存儲實現 | 9.1排序的基本概念 |
4.2.1定長順序串 | 9.2插入類排序 |
4.2.2堆串 | 9.2.1直接插入排序 |
4.2.3塊鏈串 | 9.2.2折半插入排序 |
4.3串的套用舉例:簡單的行編輯器 | 9.2.3希爾排序 |
4.4總結與提高 | 9.2.4小結 |
4.4.1主要知識點 | 9.3交換類排序 |
4.4.2典型題例 | 9.3.1冒泡排序 |
習題 | 9.3.2快速排序 |
實習題 | 9.3.3小結 |
第5章數組與廣義表 | 9.4選擇類排序 |
5.1數組的定義與運算 | 9.4.1簡單選擇排序 |
5.2數組的順序存儲與實現 | 9.4.2樹形選擇排序 |
5.3特殊矩陣的壓縮存儲 | 9.4.3堆排序 |
5.3.1規律分布的特殊矩陣 | 9.4.4小結 |
5.3.2稀疏矩陣 | 9.5歸併排序 |
5.4廣義表 | 9.6分配類排序 |
5.4.1廣義表的概念 | 9.6.1多關鍵字排序 |
5.4.2廣義表的存儲結構 | 9.6.2鏈式基數排序 |
5.4.3廣義表的操作實現 | 9.6.3基數排序的順序表實現 |
5.5總結與提高 | 9.7各種排序方法的綜合比較 |
5.5.1主要知識點 | 9.8總結與提高 |
5.5.2典型題例 | 9.8.1主要知識點 |
習題 | 9.8.2典型題例 |
實習題 | 習題 |
第6章樹與二叉樹 | 實習題 |
6.1樹的定義與基本術語 | 第10章外部排序 |
6.2二叉樹 | 10.1外排序的基本方法 |
6.2.1二叉樹的定義與基本操作 | 10.1.1磁碟排序 |
6.2.2二叉樹的性質 | 10.1.2磁帶排序 |
6.2.3二叉樹的存儲結構 | 10.2總結與提高 |
6.3二叉樹的遍歷與線索化 | 習題 |
6.3.1二叉樹的遍歷 | 參考文獻 |
6.3.2遍歷算法套用 | 著作權 |