中圖網小程序
一鍵登錄
更方便
本類五星書更多>
-
>
闖進數學世界――探秘歷史名題
-
>
中醫基礎理論
-
>
當代中國政府與政治(新編21世紀公共管理系列教材)
-
>
高校軍事課教程
-
>
思想道德與法治(2021年版)
-
>
毛澤東思想和中國特色社會主義理論體系概論(2021年版)
-
>
中醫內科學·全國中醫藥行業高等教育“十四五”規劃教材
數據結構教程(C語言版)/劉曉靜等 版權信息
- ISBN:9787030654588
- 條形碼:9787030654588 ; 978-7-03-065458-8
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
數據結構教程(C語言版)/劉曉靜等 內容簡介
本書的章綜述數據、數據結構和抽象數據類型等基本概念;第2章至第7章從抽象數據類型的角度出發,分別討論線性表、棧、隊列、字符串二叉樹以及圖等基本類型的數據結構及其應用;第7章至8章討論查找和排序,除了介紹各種實現方法之外,并著重從時間上進行定性或定量的分析和比較。全書中采用類C語言作為數據結構和算法的描述語言,在對數據的存儲結構和算法進行描述時,盡量考慮C語言的特色,如利用數組的動態分配實現存儲結構等。由于數據結構的原理與算法比較抽象,而目前市面上有關數據結構的原理與算法比較抽象,很多讀者難以掌握。此外,大多數相關書籍一般不提供完整的算法,這樣給讀者帶來很大的不便,故此我們編寫此書。它的突出特點就是算法完整、內容充實,而且所有算法都用C語言編寫,其內容選取符合教學大綱的要求,并兼顧學科的廣度和深度,更符合西北地區學生的實際情況。
數據結構教程(C語言版)/劉曉靜等 目錄
目錄
第1章 緒論 1
1.1 組織數據的方法——數據結構 1
1.2 解決問題的方法——算法 2
1.3 衡量算法優劣的方式——復雜度分析 5
本章小結 9
練習題 11
上機實驗題 12
第2章 線性表 14
2.1 基本概念與運算 14
2.1.1 線性表的定義 14
2.1.2 線性表的運算 15
2.2 線性表的順序存儲方式 15
2.2.1 順序表的結構 15
2.2.2 順序表的運算 17
2.2.3 順序表的實現 20
2.3 線性表的鏈式存儲方式 24
2.3.1 單鏈表 24
2.3.2 循環鏈表 38
2.3.3 雙向鏈表 41
2.4 線性表的應用 42
2.4.1 單鏈表的應用:單鏈表歸并問題 42
2.4.2 循環鏈表的應用:求解約瑟夫問題 44
本章小結 46
練習題 48
上機實驗題 50
第3章 棧和隊列 52
3.1 棧 52
3.1.1 棧的定義 52
3.1.2 棧的表示和實現 52
3.1.3 棧的應用——進制轉換 56
3.2 遞歸 59
3.2.1 遞歸的定義 59
3.2.2 遞歸的調用 60
3.2.3 棧與遞歸 65
3.3 隊列 68
3.3.1 隊列的定義 68
3.3.2 隊列的表示和實現 69
3.3.3 隊列的應用 74
本章小結 80
練習題 82
上機實驗題 83
第4章 字符串匹配 86
4.1 概述 86
4.2 蠻力匹配 87
4.3 KMP 算法 88
本章小結 92
練習題 93
上機實驗題 94
第5章 二叉樹 96
5.1 二叉樹的概念和性質 96
5.1.1 樹的概念 96
5.1.2 二叉樹的概念 98
5.1.3 二叉樹的性質 100
5.2 二叉樹的存儲結構 101
5.2.1 順序存儲結構 101
5.2.2 鏈式存儲結構 102
5.3 二叉樹的遍歷 104
5.3.1 二叉樹的遞歸遍歷 104
5.3.2 二叉樹的非遞歸遍歷 107
5.4 二叉樹的構造 113
5.5 二叉樹遍歷的應用 113
5.5.1 統計二叉樹中葉子結點的個數 113
5.5.2 計算二叉樹的高度 114
5.5.3 二叉樹重構 114
5.6 霍夫曼樹 115
5.6.1 路徑和路徑長度 115
5.6.2 結點的權及帶權路徑長度 115
5.6.3 霍夫曼樹定義 115
5.6.4 構造霍夫曼樹 116
5.7 并查集 117
5.7.1 并查集的概念 117
5.7.2 并查集的操作 118
5.7.3 并查集的存儲結構及實現 118
5.7.4 合并和查找的改進——Quick Union/Find 119
本章小結 120
練習題 121
上機實驗題 122
第6章 圖 124
6.1 圖的定義 124
6.1.1 基本定義 124
6.1.2 圖的頂點與邊間關系 127
6.1.3 連通圖 129
6.2 圖的存儲結構 130
6.2.1 鄰接矩陣 130
6.2.2 鄰接表 132
6.3 圖的創建、輸出及刪除 134
6.3.1 創建圖 134
6.3.2 輸出圖 136
6.3.3 刪除圖 137
6.4 圖的遍歷 144
6.4.1 深度優先遍歷 144
6.4.2 廣度優先遍歷 145
6.5 小生成樹 151
6.5.1 生成樹的概念 151
6.5.2 小生成樹的概念 151
6.5.3 蠻力算法 152
6.5.4 普里姆(Prim)算法 152
6.5.5 克魯斯卡爾( Kruskal )算法 155
6.6 短路徑 162
6.6.1 路徑的概念 163
6.6.2 單源短路徑 163
6.6.3 多源點之間的短路徑 167
6.7 拓撲排序 175
6.7.1 拓撲排序介紹 175
6.7.2 拓撲排序算法 176
本章小結 176
練習題 177
上機實驗題 178
第7章 查找 181
7.1 查找概述 181
7.2 線性表的查找 182
7.2.1 順序查找 182
7.2.2 折半查找 184
7.2.3 斐波那契查找 186
7.3 二叉排序樹 188
7.3.1 二叉排序樹的插入和創建 190
7.3.2 二叉排序樹的查找 191
7.3.3 二叉排序樹的刪除 191
7.4 平衡二叉樹 194
7.4.1 定義及性質 194
7.4.2 插入操作 195
7.4.3 刪除操作 198
7.4.4 統一調整(3+4 重構) 200
7.5 哈希表 203
7.5.1 哈希表的定義 203
7.5.2 哈希函數的構造方法 204
7.5.3 處理哈希沖突的方法 206
7.5.4 哈希表查找性能 208
本章小結 208
練習題 211
上機實驗題 212
第8章 排序 213
8.1 冒泡排序 213
8.2 插入排序 215
8.3 選擇排序 217
8.4 歸并排序 219
8.5 快速排序 221
8.6 桶排序 226
8.7 基數排序 227
本章小結 235
練習題 236
上機實驗題 237
參考文獻 239
第1章 緒論 1
1.1 組織數據的方法——數據結構 1
1.2 解決問題的方法——算法 2
1.3 衡量算法優劣的方式——復雜度分析 5
本章小結 9
練習題 11
上機實驗題 12
第2章 線性表 14
2.1 基本概念與運算 14
2.1.1 線性表的定義 14
2.1.2 線性表的運算 15
2.2 線性表的順序存儲方式 15
2.2.1 順序表的結構 15
2.2.2 順序表的運算 17
2.2.3 順序表的實現 20
2.3 線性表的鏈式存儲方式 24
2.3.1 單鏈表 24
2.3.2 循環鏈表 38
2.3.3 雙向鏈表 41
2.4 線性表的應用 42
2.4.1 單鏈表的應用:單鏈表歸并問題 42
2.4.2 循環鏈表的應用:求解約瑟夫問題 44
本章小結 46
練習題 48
上機實驗題 50
第3章 棧和隊列 52
3.1 棧 52
3.1.1 棧的定義 52
3.1.2 棧的表示和實現 52
3.1.3 棧的應用——進制轉換 56
3.2 遞歸 59
3.2.1 遞歸的定義 59
3.2.2 遞歸的調用 60
3.2.3 棧與遞歸 65
3.3 隊列 68
3.3.1 隊列的定義 68
3.3.2 隊列的表示和實現 69
3.3.3 隊列的應用 74
本章小結 80
練習題 82
上機實驗題 83
第4章 字符串匹配 86
4.1 概述 86
4.2 蠻力匹配 87
4.3 KMP 算法 88
本章小結 92
練習題 93
上機實驗題 94
第5章 二叉樹 96
5.1 二叉樹的概念和性質 96
5.1.1 樹的概念 96
5.1.2 二叉樹的概念 98
5.1.3 二叉樹的性質 100
5.2 二叉樹的存儲結構 101
5.2.1 順序存儲結構 101
5.2.2 鏈式存儲結構 102
5.3 二叉樹的遍歷 104
5.3.1 二叉樹的遞歸遍歷 104
5.3.2 二叉樹的非遞歸遍歷 107
5.4 二叉樹的構造 113
5.5 二叉樹遍歷的應用 113
5.5.1 統計二叉樹中葉子結點的個數 113
5.5.2 計算二叉樹的高度 114
5.5.3 二叉樹重構 114
5.6 霍夫曼樹 115
5.6.1 路徑和路徑長度 115
5.6.2 結點的權及帶權路徑長度 115
5.6.3 霍夫曼樹定義 115
5.6.4 構造霍夫曼樹 116
5.7 并查集 117
5.7.1 并查集的概念 117
5.7.2 并查集的操作 118
5.7.3 并查集的存儲結構及實現 118
5.7.4 合并和查找的改進——Quick Union/Find 119
本章小結 120
練習題 121
上機實驗題 122
第6章 圖 124
6.1 圖的定義 124
6.1.1 基本定義 124
6.1.2 圖的頂點與邊間關系 127
6.1.3 連通圖 129
6.2 圖的存儲結構 130
6.2.1 鄰接矩陣 130
6.2.2 鄰接表 132
6.3 圖的創建、輸出及刪除 134
6.3.1 創建圖 134
6.3.2 輸出圖 136
6.3.3 刪除圖 137
6.4 圖的遍歷 144
6.4.1 深度優先遍歷 144
6.4.2 廣度優先遍歷 145
6.5 小生成樹 151
6.5.1 生成樹的概念 151
6.5.2 小生成樹的概念 151
6.5.3 蠻力算法 152
6.5.4 普里姆(Prim)算法 152
6.5.5 克魯斯卡爾( Kruskal )算法 155
6.6 短路徑 162
6.6.1 路徑的概念 163
6.6.2 單源短路徑 163
6.6.3 多源點之間的短路徑 167
6.7 拓撲排序 175
6.7.1 拓撲排序介紹 175
6.7.2 拓撲排序算法 176
本章小結 176
練習題 177
上機實驗題 178
第7章 查找 181
7.1 查找概述 181
7.2 線性表的查找 182
7.2.1 順序查找 182
7.2.2 折半查找 184
7.2.3 斐波那契查找 186
7.3 二叉排序樹 188
7.3.1 二叉排序樹的插入和創建 190
7.3.2 二叉排序樹的查找 191
7.3.3 二叉排序樹的刪除 191
7.4 平衡二叉樹 194
7.4.1 定義及性質 194
7.4.2 插入操作 195
7.4.3 刪除操作 198
7.4.4 統一調整(3+4 重構) 200
7.5 哈希表 203
7.5.1 哈希表的定義 203
7.5.2 哈希函數的構造方法 204
7.5.3 處理哈希沖突的方法 206
7.5.4 哈希表查找性能 208
本章小結 208
練習題 211
上機實驗題 212
第8章 排序 213
8.1 冒泡排序 213
8.2 插入排序 215
8.3 選擇排序 217
8.4 歸并排序 219
8.5 快速排序 221
8.6 桶排序 226
8.7 基數排序 227
本章小結 235
練習題 236
上機實驗題 237
參考文獻 239
展開全部
書友推薦
- >
上帝之肋:男人的真實旅程
- >
中國歷史的瞬間
- >
隨園食單
- >
苦雨齋序跋文-周作人自編集
- >
小考拉的故事-套裝共3冊
- >
李白與唐代文化
- >
史學評論
- >
推拿
本類暢銷