《數據結構教程(第5版)》是李春葆主編,2017年清華大學出版社出版的“十二五”普通高等教育本科國家級規劃教材、高等學校數據結構課程系列教材。該教材適合高等院校計算機和相關專業的本科生及研究生使用。
該教材共13章,內容包括緒論、線性表、棧和佇列、串、遞歸、數組和廣義表、樹和二叉樹、圖、查找、內排序、外排序和檔案等,書中給出了練習題和各類上機實驗題,每個知識點都配有視頻講解。
基本介紹
- 書名:數據結構教程(第5版)
- 作者:李春葆
- 類別:“十二五”普通高等教育本科國家級規劃教材
- 出版社:清華大學出版社
- 出版時間:2017年5月1日
- 開本:16 開
- 裝幀:平裝
- ISBN:9787302455882
- 字數:729千字
- CIP核字號:2017283892
成書過程
修訂情況
出版工作
責任編輯 | 封面設計 | 責任校對 | 責任印製 |
---|---|---|---|
魏江江、王冰飛 | 楊兮 | 李建莊 | 楊艷 |
內容簡介
教材目錄
第1章緒論 1.1什麼是數據結構 1.1.1數據結構的定義 1.1.2邏輯結構 1.1.3存儲結構 1.1.4數據運算 1.1.5數據類型和抽象數據類型 1.2算法及其描述 1.2.1什麼是算法 1.2.2算法設計的目標 1.2.3算法描述 1.3算法分析 1.3.1算法分析概述 1.3.2算法時間性能分析 1.3.3算法空間性能分析 1.4數據結構+算法=程式 1.4.1程式和數據結構 1.4.2算法和程式 1.4.3算法和數據結構 1.4.4數據結構的發展 本章小結 練習題1 上機實驗題1 驗證性實驗 設計性實驗 第2章線性表 2.1線性表及其邏輯結構 2.1.1線性表的定義 2.1.2線性表的抽象數據類型描述 2.2線性表的順序存儲結構 2.2.1線性表的順序存儲結構——順序表 2.2.2順序表基本運算的實現 2.3線性表的鏈式存儲結構 2.3.1線性表的鏈式存儲結構——鍊表 2.3.2單鍊表 2.3.3雙鍊表 2.3.4循環鍊表 2.4線性表的套用 2.5有序表 2.5.1有序表的抽象數據類型描述 2.5.2有序表的存儲結構及其基本運算算法 2.5.3有序表的歸併算法 2.5.4有序表的套用 本章小結 練習題2 上機實驗題2 驗證性實驗 設計性實驗 綜合性實驗 第3章棧和佇列 3.1棧 3.1.1棧的定義 3.1.2棧的順序存儲結構及其基本運算的實現 3.1.3棧的鏈式存儲結構及其基本運算的實現 3.1.4棧的套用 3.2佇列 3.2.1佇列的定義 3.2.2佇列的順序存儲結構及其基本運算的實現 3.2.3佇列的鏈式存儲結構及其基本運算的實現 3.2.4佇列的套用舉例 3.2.5雙端佇列 本章小結 練習題3 上機實驗題3 驗證性實驗 設計性實驗 綜合性實驗 第4章串 4.1串的基本概念 4.2串的存儲結構 4.2.1串的順序存儲結構——順序串 4.2.2串的鏈式存儲結構——鏈串 4.3串的模式匹配 4.3.1BruteForce算法 4.3.2KMP算法 本章小結 練習題4 上機實驗題4 驗證性實驗 設計性實驗 綜合性實驗 第5章遞歸 5.1什麼是遞歸 5.1.1遞歸的定義 5.1.2何時使用遞歸 5.1.3遞歸模型 5.1.4遞歸與數學歸納法 5.2棧和遞歸 5.2.1函式調用棧 5.2.2遞歸調用的實現 5.2.3遞歸到非遞歸的轉換 5.3遞歸算法的設計 5.3.1遞歸算法設計的步驟 5.3.2基於遞歸數據結構的遞歸算法設計 5.3.3基於遞歸求解方法的遞歸算法設計 本章小結 練習題5 上機實驗題5 驗證性實驗 設計性實驗 綜合性實驗 第6章數組和廣義表 6.1數組 6.1.1數組的基本概念 6.1.2數組的存儲結構 6.1.3特殊矩陣的壓縮存儲 6.2稀疏矩陣 6.2.1稀疏矩陣的三元組表示 6.2.2稀疏矩陣的十字鍊表表示 6.3廣義表 6.3.1廣義表的定義 6.3.2廣義表的存儲結構 6.3.3廣義表的運算 本章小結 練習題6 上機實驗題6 驗證性實驗 設計性實驗 綜合性實驗 第7章樹和二叉樹 7.1樹的基本概念 7.1.1樹的定義 7.1.2樹的邏輯表示方法 7.1.3樹的基本術語 7.1.4樹的性質 7.1.5樹的基本運算 7.1.6樹的存儲結構 7.2二叉樹的概念和性質 7.2.1二叉樹的定義 7.2.2二叉樹的性質 7.2.3二叉樹與樹、森林之間的轉換 7.3二叉樹的存儲結構 7.3.1二叉樹的順序存儲結構 7.3.2二叉樹的鏈式存儲結構 7.4二叉樹的基本運算及其實現 7.4.1二叉樹的基本運算概述 7.4.2二叉樹的基本運算算法實現 7.5二叉樹的遍歷 7.5.1二叉樹遍歷的概念 7.5.2先序、中序和後序遍歷遞歸算法 7.5.3先序、中序和後序遍歷非遞歸算法 7.5.4層次遍歷算法 7.6二叉樹的構造 7.7線索二叉樹 7.7.1線索二叉樹的概念 7.7.2線索化二叉樹 | 7.7.3遍歷線索化二叉樹 7.8哈夫曼樹 7.8.1哈夫曼樹概述 7.8.2哈夫曼樹的構造算法 7.8.3哈夫曼編碼 7.9用並查集求解等價問題 7.9.1什麼叫並查集 7.9.2並查集的算法實現 本章小結 練習題7 上機實驗題7 驗證性實驗 設計性實驗 綜合性實驗 第8章圖 8.1圖的基本概念 8.1.1圖的定義 8.1.2圖的基本術語 8.2圖的存儲結構和基本運算算法 8.2.1鄰接矩陣存儲方法 8.2.2鄰接表存儲方法 8.2.3圖基本運算算法設計 8.2.4其他存儲方法 8.3圖的遍歷 8.3.1圖的遍歷的概念 8.3.2深度優先遍歷 8.3.3廣度優先遍歷 8.3.4非連通圖的遍歷 8.3.5圖遍歷算法的套用 8.4生成樹和最小生成樹 8.4.1生成樹的概念 8.4.2無向圖的連通分量和生成樹 8.4.3普里姆算法 8.4.4克魯斯卡爾算法 8.5最短路徑 8.5.1路徑的概念 8.5.2從一個頂點到其餘各頂點的最短路徑 8.5.3每對頂點之間的最短路徑 8.6拓撲排序 8.7AOE網與關鍵路徑 8.7.1相關概念 8.7.2求AOE網的關鍵活動 本章小結 練習題8 上機實驗題8 驗證性實驗 設計性實驗 綜合性實驗 第9章查找 9.1查找的基本概念 9.2線性表的查找 9.2.1順序查找 9.2.2折半查找 9.2.3索引存儲結構和分塊查找 9.3樹表的查找 9.3.1二叉排序樹 9.3.2平衡二叉樹 9.3.3B-樹 9.3.4B+樹 9.4哈希表的查找 9.4.1哈希表的基本概念 9.4.2哈希函式的構造方法 9.4.3哈希衝突的解決方法 9.4.4哈希表的運算算法 本章小結 練習題9 上機實驗題9 驗證性實驗 設計性實驗 綜合性實驗 第10章內排序 10.1排序的基本概念 10.2插入排序 10.2.1直接插入排序 10.2.2折半插入排序 10.2.3希爾排序 10.3交換排序 10.3.1冒泡排序 10.3.2快速排序 10.4選擇排序 10.4.1簡單選擇排序 10.4.2堆排序 10.5歸併排序 10.6基數排序 10.7各種內排序方法的比較和選擇 本章小結 練習題10 上機實驗題10 驗證性實驗 設計性實驗 綜合性實驗 第11章外排序 11.1外排序概述 11.2磁碟排序 11.2.1磁碟排序概述 11.2.2生成初始歸併段 11.2.3多路平衡歸併 11.2.4最佳歸併樹 11.3磁帶排序 11.3.1多路平衡歸併排序 11.3.2多階段歸併排序 本章小結 練習題11 上機實驗題11 驗證性實驗 設計性實驗 第12章檔案 12.1檔案的基本概念 12.1.1什麼是檔案 12.1.2檔案的邏輯結構及操作 12.1.3檔案的存儲結構 12.2順序檔案 12.3索引檔案 12.3.1ISAM檔案 12.3.2VSAM檔案 12.4哈希檔案 12.5多關鍵字檔案 12.5.1多重表檔案 12.5.2倒排檔案 本章小結 練習題12 上機實驗題12 驗證性實驗 設計性實驗 第13章採用面向對象的方法描述算法 13.1面向對象的概念 13.2用C++描述面向對象的程式 13.2.1類 13.2.2類對象 13.2.3構造函式和析構函式 13.2.4模板類 13.3用C++描述數據結構算法 13.3.1順序表類模板 13.3.2鏈棧類模板 13.4使用STL設計數據結構算法 附錄A實驗報告格式 一、設計人員相關信息 二、程式設計相關信息 三、實驗提交內容 附錄B引用型參數和指針引用型參數的說明 附錄C算法索引 附錄D名詞索引 附錄E全國計算機專業數據結構2016年 聯考大綱 參考文獻 |
教學資源
- 配套教材
書名 | 書號 | 出版社 | 作者 |
---|---|---|---|
《數據結構教程(第5版)上機實驗指導》 | 9787302455868 | 清華大學出版社 | 李春葆 |
《數據結構教程(第5版)學習指導》 | 9787302455875 | 清華大學出版社 | 李春葆 |