《數(shù)據(jù)結(jié)構(gòu)(第3版)/“十二五”普通高等教育本科國家級規(guī)劃教材》系統(tǒng)介紹了數(shù)據(jù)結(jié)構(gòu)的概念、原理、技術(shù)和應(yīng)用實例,由紙介質(zhì)部分和在線數(shù)字化資源部分所組成,是一部“紙介質(zhì)教材”和“數(shù)字化資源”相輔相成、緊密結(jié)合的“新形態(tài)教材”。 《數(shù)據(jù)結(jié)構(gòu)(第3版)/“十二五”普通高等教育本科國家級規(guī)劃教材》的紙介質(zhì)部分主要包括數(shù)學(xué)準(zhǔn)備、緒論、基本數(shù)據(jù)結(jié)構(gòu)、排序與查找等內(nèi)容,共8章。其中,第1章“數(shù)學(xué)準(zhǔn)備”,系統(tǒng)地介紹與算法分析緊密相關(guān)的數(shù)學(xué)分支(生成函數(shù)與漸近表示除外,漸近表示在第2章簡要介紹)的基本知識;第2章“緒論”,對算法描述語言ADL和算法書寫規(guī)范、數(shù)據(jù)結(jié)構(gòu)與算法的基本概念、算法分析基礎(chǔ)等進行闡述;第3、4章介紹線性結(jié)構(gòu),系統(tǒng)地描述線性表、堆棧、隊列、數(shù)組和字符串等結(jié)構(gòu)的存儲、操作和應(yīng)用;第5章“樹與二叉樹”,在詳細刻畫樹和二叉樹結(jié)構(gòu)的基礎(chǔ)上,從應(yīng)用和數(shù)據(jù)結(jié)構(gòu)擴展的視角漸進地討論線索二叉樹、哈夫曼樹、并查集和決策樹等內(nèi)容;第6章“圖”,系統(tǒng)地闡述圖的基本概念、基本存儲結(jié)構(gòu)和基本算法,新增了帶約束的短路徑算法和功能同Warshall算法但更高效的傳遞閉包求解算法,從應(yīng)用的視角討論復(fù)雜網(wǎng)絡(luò)概念和基于圖的典型信息搜索算法;第7、8章“排序”與“查找”,深入討論排序和查找的重要內(nèi)容,并給出典型算法的描述、時間復(fù)雜性分析和相關(guān)算法的比較等。 《數(shù)據(jù)結(jié)構(gòu)(第3版)/“十二五”普通高等教育本科國家級規(guī)劃教材》的數(shù)字化資源部分主要包括以下幾部分:算法的C++程序代碼,與ADL算法描述相呼應(yīng),為讀者上機實踐提供方便;習(xí)題答案或解題思路;重要內(nèi)容的講解視頻;較難算法的動畫演示程序。這些內(nèi)容均以數(shù)字化形式存于網(wǎng)站,讀者使用移動終端掃描紙介質(zhì)教材上的二維碼便可隨時隨地訪問與之對應(yīng)的數(shù)字化資源。 《數(shù)據(jù)結(jié)構(gòu)(第3版)/“十二五”普通高等教育本科國家級規(guī)劃教材》可作為高等院校計算機科學(xué)與技術(shù)、軟件工程及相關(guān)專業(yè)的教材和教學(xué)參考書,也可供相關(guān)專業(yè)的工程技術(shù)人員參考使用。
第1章 數(shù)學(xué)準(zhǔn)備
1.1 數(shù)學(xué)歸納法
1.2 數(shù)、冪與對數(shù)
1.3 和與積
1.4 整數(shù)函數(shù)和初等數(shù)論
1.5 排列和階乘
1.6 二項式系數(shù)
1.7 調(diào)和數(shù)
1.8 斐波那契數(shù)
小結(jié)
推薦讀物與參考文獻
習(xí)題
第2章 緒論
2.1 為什么要學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)
2.2 數(shù)據(jù)結(jié)構(gòu)概念
2.2.1 數(shù)據(jù)的邏輯結(jié)構(gòu)
2.2.2 數(shù)據(jù)的存儲結(jié)構(gòu)
2.2.3 對數(shù)據(jù)結(jié)構(gòu)的操作
2.2.4 數(shù)據(jù)結(jié)構(gòu)示例
2.3 算法
2.3.1 算法及其特性
2.3.2 算法的描述
2.3.3 算法的評價準(zhǔn)則
2.4 算法的正確性證明
2.5 算法分析基礎(chǔ)
2.5.1 算法時間復(fù)雜性的分析方法
2.5.2 復(fù)雜性函數(shù)的漸近表示
2.5.3 算法時間與空間分析
2.5.4 計算復(fù)雜性和算法的效率
小結(jié)
推薦讀物與參考文獻
習(xí)題
第3章 線性表、堆棧和隊列
3.1 線性表的定義和基本操作
3.2 線性表的順序存儲結(jié)構(gòu)
3.3 線性表的鏈接存儲結(jié)構(gòu)
3.3.1 單鏈表
3.3.2 循環(huán)鏈表
3.3.3 雙向鏈表
3.4 復(fù)雜性分析
3.5 堆棧
3.5.1 堆棧的定義和基本操作
3.5.2 順序棧
3.5.3 鏈?zhǔn)綏?/span>
3.5.4 順序棧與鏈?zhǔn)綏5谋容^
3.5.5 堆棧應(yīng)用——括號匹配
3.5.6 堆棧應(yīng)用——遞歸
3.6 隊列
3.6.1 隊列的定義和基本操作
3.6.2 順序隊列
3.6.3 鏈?zhǔn)疥犃?/span>
小結(jié)
推薦讀物與參考文獻
習(xí)題
第4章 數(shù)組和字符串
4.1 數(shù)組
4.1.1 數(shù)組的存儲和尋址
4.1.2 一維數(shù)組的基本操作
4.2 矩陣
4.2.1 矩陣的數(shù)組表示
4.2.2 特殊矩陣的壓縮存儲
4.2.3 三元組表
4.2.4 十字鏈表
4.3 字符串
4.3.1 字符串的定義與存儲
4.3.2 模式匹配算法
小結(jié)
推薦讀物與參考文獻
習(xí)題
第5章 樹與二叉樹
5.1 樹的基本概念
5.1.1 樹的定義
5.1.2 樹的相關(guān)術(shù)語
5.1.3 樹的表示
5.2 二叉樹
5.2.1 二叉樹定義和主要性質(zhì)
5.2.2 二叉樹順序存儲
5.2.3 二叉樹鏈接存儲
5.2.4 二叉樹遍歷
5.2.5 二叉樹的其他操作
5.2.6 表達式樹
5.3 線索二叉樹
5.3.1 線索二叉樹的概念
5.3.2 線索二叉樹的操作
5.3.3 線索二叉樹的進一步說明
5.4 壓縮與哈夫曼樹
5.4.1 文件編碼
5.4.2 擴充二叉樹
5.4.3 哈夫曼樹和哈夫曼編碼
5.5 樹的存儲和操作
5.5.1 樹與二叉樹的轉(zhuǎn)換
5.5.2 樹的存儲結(jié)構(gòu)
5.5.3 樹和森林的遍歷
5.5.4 樹的順序表示
5.6 等價類與并查集
5.6.1 等價類
5.6.2 并查集的實現(xiàn)
5.7 分類與決策樹
小結(jié)
推薦讀物與參考文獻
習(xí)題
第6章 圖
6.1 圖的基本概念
6.2 圖的存儲結(jié)構(gòu)
6.2.1 鄰接矩陣
6.2.2 鄰接表
6.3 圖的遍歷算法
6.3.1 深度優(yōu)先遍歷
6.3.2 廣度優(yōu)先遍歷
6.4 拓撲排序
6.5 關(guān)鍵路徑
6.6 最短路徑問題
6.6.1 無權(quán)最短路徑問題
6.6.2 正權(quán)最短路徑問題
6.6.3 每對頂點之間的最短路徑
6.6.4 滿足約束的最短路徑
6.7 最小支撐樹
6.7.1 普里姆算法
6.7.2 克魯斯卡爾算法
6.8 圖的應(yīng)用
6.8.1 可及性及傳遞閉包算法
6.8.2 連通分量
6.8.3 圖在網(wǎng)絡(luò)分析和信息
檢索中的應(yīng)用
小結(jié)
推薦讀物與參考文獻
習(xí)題
第7章 排序
7.1 排序問題的基本概念
7.2 插入排序
7.2.1 直接插入排序
7.2.2 Shell排序
7.3 交換排序
7.3.1 冒泡排序
7.3.2 快速排序
7.4 選擇排序
7.4.1 直接選擇排序
7.4.2 堆排序
7.5 合并排序
7.6 基于關(guān)鍵詞比較的排序算法分析
7.6.1 平方階排序算法及改進算法
7.6.2 線性對數(shù)階排序算法
7.6.3 分治排序的一般方法
7.6.4 基于關(guān)鍵詞比較的排序算法下界
7.7 分布排序
7.8 外排序
7.8.1 外存儲器
7.8.2 磁帶排序
7.8.3 磁盤排序
小結(jié)
推薦讀物與參考文獻
習(xí)題
第8章 查找
8.1 順序查找
8.1.1 無序表的順序查找
8.1.2 有序表的順序查找
8.2 基于關(guān)鍵詞比較的查找
8.2.1 對半查找
8.2.2 一致對半查找
8.2.3 斐波那契查找
8.2.4 插值查找
8.3 二叉查找樹
8.3.1 基本概念和性質(zhì)
8.3.2 查找、插人和刪除
8.3.3 平均情況時間分析
8.4 最優(yōu)二叉查找樹
8.4.1 訪問頻率
8.4.2 最優(yōu)二叉查找樹
8.4.3 近似最優(yōu)樹的構(gòu)造
8.5 高度平衡樹
8.5.1 基本概念和性質(zhì)
8.5.2 查找和插入操作
8.5.3 線性表的平衡樹表示
8.5.4 刪除操作
8.6 B樹
8.6.1 多叉樹
8.6.2 B樹
8.7 數(shù)字查找
8.7.1 檢索結(jié)構(gòu)查找
8.7.2 數(shù)字樹查找
8.8 散列
8.8.1 散列函數(shù)
8.8.2 沖突調(diào)節(jié)
8.8.3 刪除
小結(jié)
推薦讀物與參考文獻
習(xí)題