基本信息
書號: 44926
ISBN: 978-7-111-44926-3
作者: 蘇仕華 劉燕君 劉振安
印次: 1-1
開本: 16開
字數: 300千字
定價: 35.0
所屬叢書: 高等院校計算機教材系列
出版日期: 2014-01-22
內容簡介
本書使用模板描述算法,實現參數化類型,使得對算法的描述更接近自然語言和更容易理解。另外,書中還精選了典型例題、實驗和習題,並有配套的課程設計,幫助學生進一步加深對算法的理解。同時,為了方便讀者考研,本書還專門單列一章考研指導,並給出了一些複習方法、考試技巧以及真題練習和參考答案,指導讀者複習並深入掌握相關知識。本書取材新穎、結構合理、概念清楚、語言簡潔、通俗易懂、實用性強,重在培養學生對各種基本算法的理解和套用技能,特別適合作為高等院校相關專業的教材,也可以作為培訓班教材、自學教材及工程技術人員的參考書
目錄信息
前言
第1章 數據結構概論1
1.1 引言1
1.2 基本概念和常用術語2
1.3 算法的描述和分析5
1.3.1 算法描述5
1.3.2 算法分析6
實驗1 求解雞兔同籠問題9
習題19
第2章 類和類模板基礎11
2.1 使用類和對象11
2.1.1 使用對象和指針11
2.1.2 new和delete運算符13
2.2 類模板14
2.4 使用組合18
2.5 套用實例21
2.5.1 使用類求解一元二次方程21
2.5.2 使用類模板和頭檔案求解一元二次方程25
實驗2 多檔案編程28
習題228
第3章 線性表30
3.1 線性表的類型定義30
3.1.1 線性表的邏輯定義30
3.1.2 線性表的抽象數據類型30
3.2 線性表的順序存儲及基本運算31
3.2.1 線性表的順序存儲31
3.2.2 順序表上基本運算的實現32
3.2.3 順序表運算套用實例36
3.2.4 線性順序表元素為結構的實例37
3.3 線性表的鏈式存儲結構39
3.3.1 線性鍊表39
7.4 線索二叉樹133
7.4.1 二叉樹的線索化134
7.4.2 線索二叉鍊表上的運算135
7.5 樹和森林137
7.5.1 樹的存儲結構137
7.5.2 樹、森林與二叉樹的轉換139
7.5.3 樹和森林的遍歷140
7.6 哈夫曼樹及其套用141
7.6.1 最優二叉樹(哈夫曼樹)141
7.6.3 哈夫曼算法的實現143
7.6.4 哈夫曼編碼146
實驗7 二叉樹的遍歷與查找算法148
習題7149
第8章 圖151
8.1 圖的定義和基本術語151
8.2 圖的存儲結構153
8.2.1 鄰接矩陣表示法153
8.2.2 鄰接表表示法156
8.3 圖的遍歷160
8.3.1 深度優先搜尋160
8.3.2 廣度優先搜尋162
8.4 圖的生成樹和最小生成樹165
8.4.1 圖的生成樹165
8.4.2 最小生成樹166
8.5 最短路徑172
8.6 拓撲排序177
實驗8 實現無向網路的最小生成樹的普里姆算法182
習題8182
第9章 排序184
9.1 基本概念184
9.2 插入排序185
9.2.1 直接插入排序185
9.2.2 希爾排序186
9.3 交換排序187
9.3.1 冒泡排序188
9.3.2 快速排序189
9.4 選擇排序192
9.4.1 使用順序表結構實現直接選擇排序193
9.4.2 使用鏈式存儲結構實現直接選擇排序194
9.4.3 堆排序196
9.5 歸併排序199
9.6 分配排序:基數排序201
9.7 內部排序方法的分析比較203
實驗9 堆排序204
習題9204
第10章 查找207
10.1 基本概念207
10.2 順序表的查找207
10.2.1 順序查找208
10.2.2 二分查找209
10.2.3 分塊查找212
10.2.4 三種查找方法的比較213
10.3 樹表的查找213
10.3.1 二叉排序樹213
10.3.2 B樹217
10.3.3 B+樹221
10.4 散列表的查找222
10.4.1 散列表的概念222
10.4.2 散列函式的構造方法223
10.4.3 處理衝突的方法224
10.4.4 散列表查找226
實驗10 二叉排序樹231
習題10231
第11章 檔案234
11.1 基本概念234
11.2 順序檔案235
11.3 索引檔案235
11.4 索引順序檔案236
11.4.1 ISAM檔案236
11.4.2 VSAM檔案237
11.4.3 散列檔案237