-
>
闖進數學世界――探秘歷史名題
-
>
中醫基礎理論
-
>
當代中國政府與政治(新編21世紀公共管理系列教材)
-
>
高校軍事課教程
-
>
思想道德與法治(2021年版)
-
>
毛澤東思想和中國特色社會主義理論體系概論(2021年版)
-
>
中醫內科學·全國中醫藥行業高等教育“十四五”規劃教材
數據結構(C語言版) 版權信息
- ISBN:9787115364630
- 條形碼:9787115364630 ; 978-7-115-36463-0
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
數據結構(C語言版) 本書特色
本書介紹了數據結構的基本概念和基本算法。全書共分為10章,包括概論、線性表及其順序存儲、線性表的鏈式存儲、字符串、數組和特殊矩陣、遞歸、樹型結構、二叉樹、圖、檢索、內排序等內容,附錄給出了較為詳細的基礎實驗和幾類綜合課程設計題。 本書內容豐富,邏輯性強,文字清晰流暢,既注重理論知識,又強調工程實用。書中既體現了抽象數據類型的概念,又對每個算法的具體實現給出了完整的c語言源代碼描述。 與本書配套的電子教案、書中所有算法的源代碼和習題參考答案均可從人民郵電出版社教學服務與資源網(www.ptpedu.com.cn)上免費下載。 本書可作為高等院校計算機專業及相關專業本科生“數據結構”課程的教材,也可作為從事計算機工程與應用的廣大讀者的參考書。
數據結構(C語言版) 內容簡介
1.“十二五”普通高等教育本科國家級規劃教材
2.江西省精品課程、省精品資源共享課程配套教材
3.c語言實現,提供全部實例代碼及實驗代碼。
數據結構(C語言版) 目錄
第1章 概論 1
1.1 數據結構的基本概念與術語 1
1.1.1 數據結構的基本概念 1
1.1.2 數據的邏輯結構 2
1.1.3 數據的存儲結構 3
1.1.4 數據的運算集合 5
1.2 數據類型和抽象數據類型 5
1.2.1 數據類型 6
1.2.2 抽象數據類型 7
1.2.3 抽象數據類型的描述和實現 7
1.3 算法和算法分析 8
1.3.1 算法的基本概念和基本特征 8
1.3.2 算法的時間復雜度和空間復雜度 8
習題 10
第2章 線性表及其順序存儲 11
2.1 線性表 11
2.2 順序表 11
2.2.1 順序表的基本概念及描述 11
2.2.2 順序表的實現 12
2.3 棧 16
2.3.1 棧的基本概念及描述 16
2.3.2 順序棧及其實現 18
2.3.3 棧的應用之一——括號匹配 20
2.3.4 棧的應用之二——算術表達式求值 21
2.4 隊列 26
2.4.1 隊列的基本概念及描述 26
2.4.2 順序隊列及其實現 27
2.4.3 順序循環隊列及其實現 30
習題 32
第3章 線性表的鏈式存儲 34
3.1 鏈式存儲 34
3.2 單鏈表 35
3.2.1 單鏈表的基本概念及描述 35
3.2.2 單鏈表的實現 36
3.3 帶頭結點的單鏈表 40
3.3.1 帶頭結點的單鏈表的基本概念及描述 40
3.3.2 帶頭結點的單鏈表的實現 40
3.4 循環單鏈表 44
3.4.1 循環單鏈表的基本概念及描述 44
3.4.2 循環單鏈表的實現 44
3.5 雙鏈表 50
3.5.1 雙鏈表的基本概念及描述 50
3.5.2 雙鏈表的實現 50
3.6 鏈式棧 55
3.6.1 鏈式棧的基本概念及描述 55
3.6.2 鏈式棧的實現 56
3.7 鏈式隊列 58
3.7.1 鏈式隊列的基本概念及描述 58
3.7.2 鏈式隊列的實現 59
習題 62
第4章 字符串、數組和特殊矩陣 64
4.1 字符串 64
4.1.1 字符串的基本概念 64
4.1.2 字符串類的定義 64
4.1.3 字符串的存儲及其實現 65
4.2 字符串的模式匹配 72
4.2.1 樸素的模式匹配算法 73
4.2.2 快速模式匹配算法 73
4.3 數組 76
4.3.1 數組和數組元素 76
4.3.2 數組類的定義 77
4.3.3 數組的順序存儲及實現 78
4.4 特殊矩陣 81
4.4.1 對稱矩陣的壓縮存儲 82
4.4.2 三角矩陣的壓縮存儲 83
4.4.3 帶狀矩陣的壓縮存儲 84
4.5 稀疏矩陣 86
4.5.1 稀疏矩陣類的定義 86
4.5.2 稀疏矩陣的順序存儲及其實現 87
4.5.3 稀疏矩陣的鏈式存儲及實現 89
習題 93
第5章 遞歸 94
5.1 遞歸的基本概念與遞歸程序設計 94
5.2 遞歸程序執行過程的分析 96
5.3 遞歸程序到非遞歸程序的轉換 99
5.3.1 簡單遞歸程序到非遞歸程序的轉換 99
5.3.2 復雜遞歸程序到非遞歸程序的轉換 102
5.4 遞歸程序設計的應用實例 107
習題 109
第6章 樹型結構 110
6.1 樹的基本概念 110
6.2 樹類的定義 112
6.3 樹的存儲結構 112
6.3.1 雙親表示法 112
6.3.2 孩子表示法 113
6.3.3 孩子兄弟表示法 116
6.4 樹的遍歷 117
6.5 樹的線性表示 120
6.5.1 樹的括號表示 120
6.5.2 樹的層號表示 122
習題 124
第7章 二叉樹 125
7.1 二叉樹的基本概念 125
7.2 二叉樹的基本運算 127
7.3 二叉樹的存儲結構 128
7.3.1 順序存儲結構 128
7.3.2 鏈式存儲結構 130
7.4 二叉樹的遍歷 131
7.4.1 二叉樹遍歷的定義 131
7.4.2 二叉樹遍歷的遞歸實現 131
7.4.3 二叉樹遍歷的非遞歸實現 133
7.5 二叉樹其他運算的實現 137
7.6 穿線二叉樹 139
7.6.1 穿線二叉樹的定義 139
7.6.2 中序穿線二叉樹的基本運算 140
7.6.3 中序穿線二叉樹的存儲結構及其實現 140
7.7 樹、森林和二叉樹的轉換 143
7.7.1 樹、森林到二叉樹的轉換 143
7.7.2 二叉樹到樹、森林的轉換 144
習題 144
第8章 圖 146
8.1 圖的基本概念 146
8.2 圖的基本運算 149
8.3 圖的基本存儲結構 150
8.3.1 鄰接矩陣及其實現 150
8.3.2 鄰接表及其實現 153
8.3.3 鄰接多重表 155
8.4 圖的遍歷 156
8.4.1 深度優先遍歷 156
8.4.2 廣度優先遍歷 158
8.5 生成樹與*小生成樹 160
8.5.1 *小生成樹的定義 161
8.5.2 *小生成樹的普里姆(prim)算法 163
8.5.3 *小生成樹的克魯斯卡爾(kruskal)算法 166
8.6 *短路徑 169
8.6.1 單源*短路徑 169
8.6.2 所有頂點對的*短路徑 172
8.7 拓撲排序 174
8.8 關鍵路徑 177
習題 182
第
9章 檢索 186
9.1 檢索的基本概念 186
9.2 線性表的檢索 187
9.2.1 順序檢索 187
9.2.2 二分法檢索 188
9.2.3 分塊檢索 191
9.3 二叉排序樹 193
9.4 豐滿樹和平衡樹 200
9.4.1 豐滿樹 200
9.4.2 平衡二叉排序樹 201
9.5 *佳二叉排序樹和huffman樹 207
9.5.1 擴充二叉樹 207
9.5.2 *佳二叉排序樹 208
9.5.3 huffman樹 213
9.6 b樹 216
9.6.1 b-樹的定義 217
9.6.2 b-樹的基本操作 217
9.6.3 b+樹 222
9.7 散列表檢索 224
9.7.1 散列存儲 224
9.7.2 散列函數的構造 225
9.7.3 沖突處理 226
習題 230
第10章 內排序 233
10.1 排序的基本概念 233
10.2 插入排序 234
10.2.1 直接插入排序 234
10.2.2 二分法插入排序 237
10.2.3 表插入排序 238
10.2.4 shell插入排序 240
10.3 選擇排序 241
10.3.1 直接選擇排序 241
10.3.2 樹型選擇排序 243
10.3.3 堆排序 245
10.4 交換排序 249
10.4.1 冒泡排序 249
10.4.2 快速排序 250
10.5 歸并排序 253
10.6 基數排序 256
10.6.1 多排序碼的排序 256
10.6.2 靜態鏈式基數排序 256
習題 260
附錄1 基礎實驗 262
實驗1 線性表的順序實現 262
實驗2 不帶頭結點的單鏈表 265
實驗3 帶頭結點的單鏈表 269
實驗4 棧與字符串 271
實驗5 遞歸 275
實驗6 樹 278
實驗7 二叉樹 280
實驗8 圖 283
實驗9 檢索 285
實驗10 排序 286
附錄2 綜合實驗 289
參考文獻 295
- >
上帝之肋:男人的真實旅程
- >
隨園食單
- >
回憶愛瑪儂
- >
名家帶你讀魯迅:故事新編
- >
中國歷史的瞬間
- >
大紅狗在馬戲團-大紅狗克里弗-助人
- >
有舍有得是人生
- >
羅庸西南聯大授課錄