數據結構(c語言)(2020年07月人民郵電出版社出版的圖書)

數據結構(c語言)(2020年07月人民郵電出版社出版的圖書)

本詞條是多義詞,共2個義項
更多義項 ▼ 收起列表 ▲

《數據結構(c語言)》是2020年07月人民郵電出版社出版的圖書,作者是王海艷,本書系統地講述了線性表、堆疊、佇列、數組、樹、查找、圖、排序等內容,還安排了習題和實驗。

基本介紹

  • 書名:數據結構(c語言)
  • 作者:王海艷
  • 出版社:人民郵電出版社
  • 出版時間:2020年7月
  • 頁數:220 頁
  • 定價:45 元
  • 開本:16 開
  • 裝幀: 平裝  
  • ISBN:9787115524126
內容簡介,圖書目錄,作者簡介,

內容簡介

全書共有10章,系統地講述了線性表、堆疊、佇列、數組、樹、查找、圖、排序等內容,還安排了習題和實驗。本書重視算法及其實踐性,書中算法都有完整的C語言程式,程式代碼注釋詳細。為了讓讀者能夠及時地檢驗學習效果、把握學習進度,每章都附有豐富的習題。

圖書目錄

第1章 緒論 1
1.1 數據結構起源 1
1.2 基本概念和術語 1
1.2.1 基本概念 1
1.2.2 數據結構 2
1.3 抽象數據類型 4
1.4 算法和算法分析 5
1.4.1 算法 5
1.4.2 算法的時間複雜度 5
1.4.3 好、壞和平均時間復
雜度 6
1.4.4 算法的空間複雜度 7
1.5 本章小結 7
習題 7
第2章 線性表 9
2.1 線性表定義 9
2.2 線性表的順序存儲結構和實現 10
2.2.1 線性表的順序存儲結構 10
2.2.2 順序表基本運算的實現 11
2.3 線性表的鏈式存儲結構和實現 14
2.3.1 單鍊表的定義和表示 15
2.3.2 單鍊表基本運算的實現 15
2.3.3 帶表頭結點的單鍊表 20
2.3.4 單循環鍊表 22
2.3.5 雙向鍊表 22
2.4 順序表與鍊表的比較 23
2.5 線性表的套用 24
2.6 本章小結 27
習題 27
第3章 堆疊和佇列 29
3.1 堆疊 29
3.1.1 堆疊ADT 29
3.1.2 堆疊的順序表示 29
3.1.3 堆疊的連結表示 31
3.2 佇列 31
3.2.1 佇列ADT 31
3.2.2 佇列的順序表示 32
3.2.3 佇列的連結表示 35
3.3 表達式計算 35
3.3.1 中綴表達式 35
3.3.2 後綴表達式及其求值方法 35
3.3.3* 中綴表達式轉換為後綴
 表達式 40
3.4 遞歸 44
3.4.1 遞歸的概念 44
3.4.2 遞歸的實現 45
3.5 本章小結 46
習題 47
第4章 數組和字元串 48
4.1 數組 48
4.1.1 一維數組 48
4.1.2 二維數組 49
4.1.3 多維數組 50
4.2 數組的抽象數據類型 50
4.3 特殊矩陣 53
4.3.1 對稱矩陣 53
4.3.2 三角矩陣 54
4.4 稀疏矩陣 55
4.4.1 稀疏矩陣的抽象數據類型 55
4.4.2 稀疏矩陣的轉置算法 57
4.5 字元串 60
4.5.1 字元串的抽象數據類型 60
4.5.2 簡單字元串匹配算法 61
4.5.3 改進的字元串匹配算法 64
4.6 本章小結 68
習題 68
第5章 樹和二叉樹 70
5.1 樹 70
5.1.1 樹的定義 70
5.1.2 基本術語 71
5.2 二叉樹 72
5.2.1 二叉樹的定義 72
5.2.2 二叉樹的性質 73
5.2.3 二叉樹ADT 74
5.2.4 二叉樹的存儲表示 75
5.2.5 二叉樹的存儲實現和基本運算 76
5.3 二叉樹的遍歷 78
5.3.1 二叉樹遍歷的遞歸算法 78
5.3.2 二叉樹遍歷的套用實例 81
5.3.3 二叉樹遍歷的非遞歸算法 83
5.3.4 線索二叉樹的基本概念和構造 85
5.4 樹和森林 86
5.4.1 森林與二叉樹的轉換 86
5.4.2 樹和森林的存儲表示 88
5.4.3 樹和森林的遍歷 91
5.5 堆和優先權佇列 92
5.5.1 堆 92
5.5.2 優先權佇列 95
5.6 哈夫曼樹和哈夫曼編碼 99
5.6.1 樹的路徑長度 100
5.6.2 哈夫曼樹和哈夫曼算法 102
5.6.3 構造哈夫曼樹 103
5.6.4 哈夫曼編碼 104
5.7 本章小結 105
習題 105
第6章 集合和搜尋 108
6.1 集合的表示 108
6.1.1 集合的基本概念 108
6.1.2 動態集ADT 109
6.1.3 集合的表示 109
6.2 順序搜尋 110
6.2.1 無序表的順序搜尋 110
6.2.2 有序表的順序搜尋 110
6.3 對半搜尋 111
6.3.1 對半搜尋方法 111
6.3.2 二叉判定樹 114
6.4 本章小結 115
習題 115
第7章 搜尋樹 116
7.1 二叉搜尋樹 116
7.1.1 二叉搜尋樹的定義 116
7.1.2 二叉搜尋樹的搜尋 117
7.1.3 二叉搜尋樹的插入 118
7.1.4 二叉搜尋樹的刪除 119
7.1.5 二叉搜尋樹的高度 121
7.2* 二叉平衡樹 122
7.2.1 二叉平衡樹的定義 122
7.2.2 二叉平衡樹的平衡調整
方法 122
7.2.3 二叉平衡樹的插入 126
7.2.4 二叉平衡樹的高度 127
7.3 m叉搜尋樹 128
7.3.1 m叉搜尋樹的定義 128
7.3.2 m叉搜尋樹的高度 129
7.4 B?樹 130
7.4.1 B?樹的定義 130
7.4.2 B?樹的高度 131
7.4.3 B?樹的搜尋 131
7.4.4 B?樹的插入 132
7.4.5 B?樹的刪除 133
7.5 本章小結 136
習題 136
第8章 散列表 138
8.1 散列技術簡介 138
8.2 散列函式 139
8.3 散列衝突處理 141
8.3.1 拉鏈法 141
8.3.2 開地址法 142
8.3.3 性能分析 149
8.4 本章小結 149
習題 150
第9章 圖 151
9.1 圖的基本概念 151
9.1.1 圖的定義 151
9.1.2 圖的基本術語 152
9.1.3 圖的類型定義 154
9.2 圖的存儲結構 154
9.2.1 鄰接矩陣表示法 154
9.2.2 鄰接矩陣的實現 155
9.2.3 鄰接表表示法 158
9.2.4 鄰接表的實現 158
9.3 圖的遍歷 161
9.3.1 深度優先遍歷 162
9.3.2 寬度優先遍歷 163
9.4 拓撲排序 165
9.4.1 AOV網 165
9.4.2 AOV網的拓撲排序 166
9.5 關鍵路徑 167
9.5.1 AOE網 167
9.5.2 AOE網的關鍵路徑 168
9.6 小代價生成樹 171
9.6.1 小代價生成樹的基本概念 171
9.6.2 普里姆算法 171
9.6.3 克魯斯卡爾算法 173
9.7 單源短路徑 176
9.7.1 短路徑問題 176
9.7.2 單源短路徑問題 176
9.8 所有頂點之間的短路徑 179
9.9 本章小結 181
習題 182
第10章 排序 185
10.1 排序的基本概念 185
10.2 簡單排序算法 186
10.2.1 簡單選擇排序 186
10.2.2 直接插入排序 189
10.2.3 冒泡排序 191
10.3 快速排序算法 194
10.4 兩路合併排序算法 198
10.5 堆排序算法 201
10.6 外排序 204
10.6.1 預處理 204
10.6.2 多路合併 208
10.6.3 合併樹 211
10.6.4 完整的外排序過程 213
10.7 本章小結 213
習題 213
附錄1 綜合實驗 215
附錄2 配套慕課使用說明 220

作者簡介

作者是江蘇省精品課程、校骨幹課程的課程負責人,她2013 年入選江蘇省“六大人才高峰”資助,2012 年江蘇省第四期"333 高層次人才培養工程"培養對象(第三層次),2006 年度江蘇省"青藍工程"培養對象,2015年獲得第二屆全國高校微課教學比賽三等獎,全省高校微課教學比賽(本科組)一等獎,2013年獲省高等學校優秀多媒體教學課件競賽一等獎。

相關詞條

熱門詞條

聯絡我們