數(shù)據(jù)結(jié)構(gòu)與算法分析(C++版)(第三版)
定 價:89 元
叢書名:國外計算機(jī)科學(xué)教材系列
- 作者:(美)Clifford A. Shaffer(克利福德 · A. 謝弗)
- 出版時間:2021/8/1
- ISBN:9787121417887
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP311.12;TP312.8
- 頁碼:408
- 紙張:
- 版次:01
- 開本:16開
本書采用程序員偏愛的面向?qū)ο驝++語言來描述數(shù)據(jù)結(jié)構(gòu)和算法,并把數(shù)據(jù)結(jié)構(gòu)原理和算法分析技術(shù)有機(jī)地結(jié)合在一起,系統(tǒng)地介紹了各種類型的數(shù)據(jù)結(jié)構(gòu),以及排序和檢索的各種方法。作者非常注意對每一種數(shù)據(jù)結(jié)構(gòu)的不同存儲方法及有關(guān)算法進(jìn)行分析比較。書中還引入了一些比較高級的數(shù)據(jù)結(jié)構(gòu)與先進(jìn)的算法分析技術(shù),并介紹了可計算性理論的一般知識。書中分別給出了C++實現(xiàn)方法和偽碼實現(xiàn)方法,便于讀者根據(jù)情況選擇。在作者維護(hù)的網(wǎng)站可下載相關(guān)代碼、編程項目和輔助練習(xí)資料。本書已根據(jù)作者在網(wǎng)站提供的勘誤表進(jìn)行過內(nèi)容更正。
Cliff A.Shaffer(克利福德 · A. 謝弗)在美國馬里蘭大學(xué)獲得學(xué)士、碩士和博士學(xué)位,現(xiàn)在在弗吉尼亞理工大學(xué)計算機(jī)科學(xué)系擔(dān)任教授,主要講授問題求解、數(shù)據(jù)結(jié)構(gòu)與算法分析、算法理論等課程,積累了豐富的教學(xué)經(jīng)驗,并出版了多部著作。
Clifford A. Shaffer教授于美國馬里蘭大學(xué)獲得計算機(jī)科學(xué)博士學(xué)位,在弗吉尼亞理工大學(xué)計算機(jī)科學(xué)系任教超過30年,具有豐富的教學(xué)經(jīng)驗,并參與遺傳學(xué)、生物信息學(xué)和計算生物學(xué)等交叉項目。著有多本數(shù)據(jù)結(jié)構(gòu)和算法分析的教材。
第一部分 預(yù)備知識
第1章 數(shù)據(jù)結(jié)構(gòu)和算法
1.1 數(shù)據(jù)結(jié)構(gòu)的原則
1.2 抽象數(shù)據(jù)類型和數(shù)據(jù)結(jié)構(gòu)
1.3 設(shè)計模式
1.4 問題、算法和程序
1.5 深入學(xué)習(xí)導(dǎo)讀
1.6 習(xí)題
第2章 數(shù)學(xué)預(yù)備知識
2.1 集合和關(guān)系
2.2 常用數(shù)學(xué)術(shù)語
2.3 對數(shù)
2.4 級數(shù)求和與遞歸
2.5 遞歸
2.6 數(shù)學(xué)證明方法
2.7 估計
2.8 深入學(xué)習(xí)導(dǎo)讀
2.9 習(xí)題
第3章 算法分析
3.1 概述
3.2 最佳、最差和平均情況
3.3 換一臺更快的計算機(jī),還是換一種更快的算法
3.4 漸近分析
3.5 程序運(yùn)行時間的計算
3.6 問題的分析
3.7 容易混淆的概念
3.8 多參數(shù)問題
3.9 空間代價
3.10 加速你的程序
3.11 實證分析
3.12 深入學(xué)習(xí)導(dǎo)讀
3.13 習(xí)題
3.14 項目設(shè)計
第二部分 基本數(shù)據(jù)結(jié)構(gòu)
第4章 線性表、棧和隊列
4.1 線性表
4.2 棧
4.3 隊列
4.4 字典
4.5 深入學(xué)習(xí)導(dǎo)讀
4.6 習(xí)題
4.7 項目設(shè)計
第5章 二叉樹
5.1 定義及主要特性
5.2 遍歷二叉樹
5.3 二叉樹的實現(xiàn)
5.4 二叉檢索樹
5.5 堆與優(yōu)先隊列
5.6 Huffman編碼樹
5.7 深入學(xué)習(xí)導(dǎo)讀
5.8 習(xí)題
5.9 項目設(shè)計
第6章 樹
6.1 樹的定義與術(shù)語
6.2 父指針表示法
6.3 樹的實現(xiàn)
6.4 K叉樹
6.5 樹的順序表示法
6.6 深入學(xué)習(xí)導(dǎo)讀
6.7 習(xí)題
6.8 項目設(shè)計
第三部分 排序與檢索
第7章 內(nèi)排序
7.1 排序術(shù)語及記號
7.2 三種代價為Θ(n2)的排序算法
7.3 Shell排序
7.4 歸并排序
7.5 快速排序
7.6 堆排序
7.7 分配排序和基數(shù)排序
7.8 對各種排序算法的實驗比較
7.9 排序問題的下限
7.10 深入學(xué)習(xí)導(dǎo)讀
7.11 習(xí)題
7.12 項目設(shè)計
第8章 文件管理和外排序
8.1 主存儲器和輔助存儲器
8.2 磁盤
8.3 緩沖區(qū)和緩沖池
8.4 程序員的文件視圖
8.5 外排序
8.6 深入學(xué)習(xí)導(dǎo)讀
8.7 習(xí)題
8.8 項目設(shè)計
第9章 檢索
9.1 檢索未排序和已排序的數(shù)組
9.2 自組織線性表
9.3 集合檢索
9.4 散列方法
9.5 深入學(xué)習(xí)導(dǎo)讀
9.6 習(xí)題
9.7 項目設(shè)計
第10章 索引技術(shù)
10.1 線性索引
10.2 ISAM
10.3 基于樹的索引
10.4 2-3樹
10.5 B樹
10.6 深入學(xué)習(xí)導(dǎo)讀
10.7 習(xí)題
10.8 項目設(shè)計
第四部分 高級數(shù)據(jù)結(jié)構(gòu)
第11章 圖
11.1 術(shù)語和表示法
11.2 圖的實現(xiàn)
11.3 圖的遍歷
11.4 最短路徑問題
11.5 最小支撐樹
11.6 深入學(xué)習(xí)導(dǎo)讀
11.7 習(xí)題
11.8 項目設(shè)計
第12章 線性表和數(shù)組高級技術(shù)
12.1 廣義表
12.2 矩陣的表示方法
12.3 存儲管理
12.4 深入學(xué)習(xí)導(dǎo)讀
12.5 習(xí)題
12.6 項目設(shè)計
第13章 高級樹結(jié)構(gòu)
13.1 Trie結(jié)構(gòu)
13.2 平衡樹
13.3 空間數(shù)據(jù)結(jié)構(gòu)
13.4 深入學(xué)習(xí)導(dǎo)讀
13.5 習(xí)題
13.6 項目設(shè)計
第五部分 算法理論
第14章 分析技術(shù)
14.1 求和技術(shù)
14.2 遞歸關(guān)系
14.3 均攤分析
14.4 深入學(xué)習(xí)導(dǎo)讀
14.5 習(xí)題
14.6 項目設(shè)計
第15章 下限
15.1 下限證明簡介
15.2 線性表檢索的下限
15.3 查找最大值
15.4 對抗性下限證明
15.5 狀態(tài)空間下限證明
15.6 查找第i大元素
15.7 優(yōu)化排序
15.8 深入學(xué)習(xí)導(dǎo)讀
15.9 習(xí)題
15.10 項目設(shè)計
第16章 算法模式
16.1 動態(tài)規(guī)劃
16.2 隨機(jī)算法
16.3 數(shù)值算法
16.4 深入學(xué)習(xí)導(dǎo)讀
16.5 習(xí)題
16.6 項目設(shè)計
第17章 計算的限制
17.1 歸約
17.2 難解問題
17.3 不可解問題
17.4 深入學(xué)習(xí)導(dǎo)讀
17.5 習(xí)題
17.6 項目設(shè)計
第六部分 附錄
附錄A 實用函數(shù)
參考文獻(xiàn)
詞匯表