數據結構(C語言版), 2/e
內容描述
本書在選材與編排上,貼近當前普通高等院校“數據結構”課程的現狀和發展趨勢,符合最新研究生考試大綱,內容難度適度,突出實用性和應用性。全書共8章,內容包括第一章緒論,第二章線性表,第三章棧和隊列,第四章串、數組和廣義表,第五章樹和二叉樹,第六章圖,第七章查找,第八章排序。全書採用類C語言作為數據結構和算法的描述語言。
本書可作為普通高等院校電腦和信息技術相關專業“數據結構”課程的教材,也可供從事電腦工程與應用工作的科技工作者參考。
目錄大綱
第1章 緒論
1.1 數據結構的研究內容
1.2 數據結構的基本概念和術語
1.2.1 數據、數據元素、數據項和數據對象
1.2.2 數據結構
1.2.3 數據類型和抽像數據類型
1.3 抽像數據類型的表示與實現
1.4 算法和算法分析
1.4.1 算法的定義及特性
1.4.2 評價算法優劣的基本標準
1.4.3 算法的時間複雜度
1.4.4 算法的空間複雜度
1.5 小結
習題
第2章 線性表
2.1 線性表的定義和特點
2.2 案例引入
2.3 線性表的類型定義
2.4 線性表的順序表示和實現
2.4.1 線性表的順序表示
2.4.2 順序表中基本操作的實現
2.5 線性表的鍊式表示和實現
2.5.1 單鍊錶的定義和表示
2.5.2 單鍊錶基本操作的實現
2.5.3 循環鍊錶
2.5.4 雙向鍊錶
2.6 順序表和鍊錶的比較
2.6.1 空間性能的比較
2.6.2 時間性能的比較
2.7 線性表的應用
2.7.1 線性表的合併
2.7.2 有序表的合併
2.8 案例分析與實現
2.9 小結
習題
第3章 棧和隊列
3.1 棧和隊列的定義和特點
3.1.1 棧的定義和特點
3.1.2 隊列的定義和特點
3.2 案例引入
3.3 棧的表示和操作的實現
3.3.1 棧的類型定義
3.3.2 順序棧的表示和實現
3.3.3 鏈棧的表示和實現
3.4 棧與遞歸
3.4.1 採用遞歸算法解決的問題
3.4.2 遞歸過程與遞歸工作棧
3.4.3 遞歸算法的效率分析
3.4.4 利用棧將遞歸轉換為非遞歸的方法
3.5 隊列的表示和操作的實現
3.5.1 隊列的類型定義
3.5.2 循環隊列——隊列的順序表示和實現
3.5.3 鏈隊列——隊列的鍊式表示和實現
3.6 案例分析與實現
3.7 小結
習題
第4章 串、數組和廣義表
4.1 串的定義
4.2 案例引入
4.3 串的類型定義、存儲結構及其運算
4.3.1 串的抽像類型定義
4.3.2 串的存儲結構
4.3.3 串的模式匹配算法
4.4 數組
4.4.1 數組的類型定義
4.4.2 數組的順序存儲
4.4.3 特殊矩陣的壓縮存儲
4.5 廣義表
4.5.1 廣義表的定義
4.5.2 廣義表的存儲結構
4.6 案例分析與實現
4.7 小結
習題
第5章 樹和二樹
5.1 樹和二樹的定義
5.1.1 樹的定義
5.1.2 樹的基本術語
5.1.3 二樹的定義
5.2 案例引入
5.3 樹和二樹的抽像數據類型定義
5.4 二樹的性質和存儲結構
5.4.1 二樹的性質
5.4.2 二樹的存儲結構
5.5 遍歷二樹和線索二樹
5.5.1 遍歷二樹
5.5.2 線素二樹
5.6 樹和森林
5.6.1 樹的存儲結構
5.6.2 森林與二樹的轉換
5.6.3 樹和森林的遍歷
5.7 哈夫曼樹及其應用
5.7.1 哈夫曼樹的基本概念
5.7.2 哈夫曼樹的構造算法
5.7.3 哈夫曼編碼
5.8 案例分析與實現
5.9 小結
習題
第6章 圖
6.1 圖的定義和基本術語
6.1.1 圖的定義
6.1.2 圖的基本術語
6.2 案例引入
6.3 圖的類型定義
圖的存儲結構
.1 鄰接矩陣
.2 鄰接表
.3 十字鍊錶
.4 鄰接多重表
6.5 圖的遍歷
6.5.1 深度優先搜索
6.5.2 廣度優先搜索
6.6 圖的應用
6.6.1 小生成樹
6.6.2 短路徑
6.6.3 拓撲排序
- 關鍵路徑
6.7 案例分析與實現
6.8 小結
習題
第7章 查找
7.1 查找的基本概念
7.2 線性表的查找
7.2.1 順序查找
7.2.2 折半查找
7.2.3 分塊查找
7.3 樹表的查找
7.3.1 二排序樹
7.3.2 平衡二樹
7.3.3 B-樹
7.3.4 B+樹
7.4 散列表的查找
7.4.1 散列表的基本概念
7.4.2 散列函數的構造方法
7.4.3 處理衝突的方法
7.4.4 散列表的查找
7.5 小結
習題
第8章 排序
8.1 基本概念和排序方法概述
8.1.1 排序的基本概念
8.1.2 內部排序方法的分類
8.1.3 待排序記錄的存儲方式
8.1.4 排序算法效率的評價指標
8.2 插入排序
8.2.1 直接插入排序
8.2.2 折半插入排序
8.2.3 希爾排序
8.3 交換排序
8.3.1 冒泡排序
8.3.2 快速排序
8.4 選擇排序
8.4.1 簡單選擇排序
8.4.2 樹形選擇排序
8.4.3 堆排序
8.5 歸併排序
8.6 基數排序
8.6.1 多關鍵字的排序
8.6.2 鍊式基數排序
8.7 外部排序
8.7.1 外部排序的基本方法
8.7.2 多路平衡歸併的實現
8.7.3 置換-選擇排序
8.7.4 佳歸併樹
8.8 小結
習題
參考文獻
作者介紹
嚴蔚敏,清華大學計算機系教授,長期從事數據結構教學和教材建設,和吳偉民合作編著的《數據結構》曾獲“第二屆普通高等學校優秀教材全國特等獎”和“1996年度國家科學技術進步獎三等獎”。