數(shù)據(jù)結(jié)構(gòu)實踐教程
定 價:59 元
- 作者:黑新宏,胡元義主編
- 出版時間:2021/1/1
- ISBN:9787121402616
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP311.12
- 頁碼:
- 紙張:
- 版次:3
- 開本:16K
本書是作者積多年講授與研究“數(shù)據(jù)結(jié)構(gòu)”課程的經(jīng)驗并結(jié)合指導(dǎo)學(xué)生上機的實踐編寫而成的。作者力求從實踐的角度,幫助讀者深入學(xué)習(xí)、理解和掌握數(shù)據(jù)結(jié)構(gòu)知識并能靈活應(yīng)用這些知識。本書涵蓋了“數(shù)據(jù)結(jié)構(gòu)”課程涉及的上機實踐內(nèi)容,并且列舉了理論知識對應(yīng)的算法實現(xiàn)程序,這些程序都已在VC++6.0環(huán)境下調(diào)試通過。
黑新宏,男,博士,教務(wù)處處長,1994.9-1998.7 西安理工大學(xué) 計算機及其應(yīng)用 學(xué)士;□000.9-□003.4
西安理工大學(xué) 計算機應(yīng)用技術(shù) 碩士;□005.4-□008.3 日本大學(xué) 理工學(xué)部 計算機科學(xué) 博士;□008.7-□013.11
西安理工大學(xué)計算機科學(xué)與工程學(xué)院 副教授;□013.1□至今 西安理工大學(xué)計算機科學(xué)與工程學(xué)院
教授!018.1至今,西安理工大學(xué)計算機學(xué)院教授、院長。
目錄
□□章 線性表1
1.1 線性表的定義1
1.□ 線性表的順序存儲――順序表1
1.3 線性表的鏈?zhǔn)酱鎯Α?br />
第□章 棧和隊列□3
□.1 棧□3
□.□ 隊列□5
第3章 串39
第4章 數(shù)組與廣義表56
4.1 數(shù)組56
4.□ 特殊矩陣58
4.3 稀疏矩陣58
4.4 廣義表61
第5章 樹與二叉樹76
5.1 樹76
5.□ 二叉樹76
5.3 二叉樹的性質(zhì)78
5.4 二叉樹的存儲結(jié)構(gòu)78
5.5 二叉樹的遍歷方法80
5.6 線索二叉樹80
5.7 哈夫曼樹8□
5.8 哈夫曼編碼84
第6章 圖115
6.1 圖的概念115
6.□ 圖的基本術(shù)語116
6.3 鄰接矩陣118
6.4 鄰接表1□0
6.5 圖的遍歷1□1
6.6 圖的連通性問題1□1
6.7 生成樹與□小生成樹1□□
6.8 □短路徑1□3
6.9 AOV網(wǎng)與拓?fù)渑判?□4
6.10 AOE網(wǎng)與關(guān)鍵路徑1□6
第7章 查找167
7.1 順序查找167
7.□ 有序表的查找168
7.3 二叉排序樹與平衡二叉樹168
7.4 哈希表與哈希方法169
7.5 哈希函數(shù)的構(gòu)造方法169
7.6 處理沖突的方法170
第8章 排序196
8.1 插入排序196
8.□ 交換排序197
8.3 選擇排序198
8.4 歸并排序□00
8.5 基數(shù)排序□00
第9章 數(shù)據(jù)結(jié)構(gòu)算法應(yīng)用□□8
9.1 順序表的應(yīng)用□□8
9.1.1 順序表的逆置□□8
9.1.□ 將兩個升序的順序表A和B合并為一個升序的順序表C□□9
9.1.3 單鏈表的逆置□31
9.1.4 將遞增有序的單鏈表A和B合并為遞減有序的單鏈表C□3□
9.1.5 刪除單鏈表中值相同的節(jié)點□34
9.1.6 按遞增次序輸出單鏈表中各節(jié)點的數(shù)據(jù)值□35
9.1.7 用單鏈表實現(xiàn)約瑟夫(Josephus)問題□37
9.□ 棧和隊列的應(yīng)用□39
9.□.1 用棧判斷給定的字符序列是否為回文□39
9.□.□ 循環(huán)鏈表中只有隊尾指針的入隊和出隊算法□40
9.□.3 算術(shù)表達式中的括號匹配□4□
9.□.4 將隊列中所有元素逆置□45
9.□.5 用兩個棧模擬一個隊列□48
9.□.6 用棧實現(xiàn)漢諾塔(Tower of Hanoi)問題非遞歸解法□50
9.3 串的應(yīng)用□5□
9.3.1 將串s1中連續(xù)的字符用串s□替換□5□
9.3.□ 計算一個子串在串中出現(xiàn)的次數(shù)□53
9.3.3 輸出長度□大的等值子串□55
9.3.4 將鏈串s中首次與鏈串t匹配的子串逆置□56
9.4 數(shù)組與廣義表的應(yīng)用□58
9.4.1 將所有奇數(shù)存放到數(shù)組的前半部分,所有偶數(shù)存放到數(shù)組的后半部分□58
9.4.□ 求字符數(shù)組中連續(xù)相同字符構(gòu)成的子序列長度□59
9.4.3 求廣義表的表頭和表尾□60
9.4.4 另一種廣義表生成方法□64
9.5 樹與二叉樹的應(yīng)用□68
9.5.1 交換二叉樹的左子樹和右子樹□68
9.5.□ 統(tǒng)計二叉樹葉子節(jié)點個數(shù)的非遞歸算法的實現(xiàn)□69
9.5.3 判定一棵二叉樹是否為完全二叉樹□71
9.5.4 求二叉樹中□□條□長的路徑并輸出此路徑上各節(jié)點的值□73
9.6 圖的應(yīng)用□76
9.6.1 鄰接矩陣轉(zhuǎn)換為鄰接表□76
9.6.□ 深度優(yōu)先搜索的非遞歸算法實現(xiàn)□78
9.6.3 求無向連通圖中距頂點v0路徑長度為k的所有節(jié)點□80
9.6.4 用深度優(yōu)先搜索對圖中所有頂點進行拓?fù)渑判颉?3
9.7 查找的應(yīng)用□86
9.7.1 判斷一棵二叉樹是否為二叉排序樹□86
9.7.□ 另一種平衡二叉樹的生成方法□88
9.8 排序的應(yīng)用□93
9.8.1 用雙向循環(huán)鏈表表示的插入排序□93
9.8.□ 雙向冒泡排序□95
9.8.3 雙向選擇排序□97
9.8.4 單鏈表存儲下的選擇排序□98
9.8.5 歸并排序的迭代算法實現(xiàn)300
參考文獻303