書籍簡介:
《數(shù)據(jù)結(jié)構(gòu)教程(c#語言描述)》系統(tǒng)地介紹了常用的數(shù)據(jù)結(jié)構(gòu)以及排序、查找的各種算法,闡述了各種數(shù)據(jù)結(jié)構(gòu)的邏輯關(guān)系、存儲(chǔ)表示及運(yùn)算操作,并采用c#語言描述數(shù)據(jù)組織和算法實(shí)現(xiàn)。
《數(shù)據(jù)結(jié)構(gòu)教程(c#語言描述)》既注重原理,又注重實(shí)踐,配有大量圖表、實(shí)踐教學(xué)項(xiàng)目和習(xí)題,內(nèi)容豐富,概念講解清楚,表達(dá)嚴(yán)謹(jǐn),邏輯性強(qiáng),語言精練,可讀性好。
《數(shù)據(jù)結(jié)構(gòu)教程(c#語言描述)》既便于教師課堂講授,又便于自學(xué)者閱讀,可作為高等院校計(jì)算機(jī)相關(guān)專業(yè)本科生、??粕慕滩模部晒V大從事計(jì)算機(jī)應(yīng)用的科技人員參考。
作者簡介:
李春葆
出版日期:
2013年02月
章節(jié)目錄:
第1章緒論
1.1什么是數(shù)據(jù)結(jié)構(gòu)
1.1.1數(shù)據(jù)結(jié)構(gòu)的定義
1.1.2數(shù)據(jù)的邏輯結(jié)構(gòu)
1.1.3數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)
1.1.4數(shù)據(jù)的運(yùn)算
1.1.5數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型
1.2算法及其描述
1.2.1什么是算法
1.2.2算法描述
1.3算法分析
1.3.1算法的特性和算法設(shè)計(jì)的目標(biāo)
1.3.2算法時(shí)間效率分析
1.3.3算法存儲(chǔ)空間分析
1.4數(shù)據(jù)結(jié)構(gòu)的目標(biāo)
本章小結(jié)
練習(xí)題1
第2章線性表
2.1線性表的定義
.2.1.1什么是線性表
2.1.2線性表的抽象數(shù)據(jù)類型描述
2.2線性表的順序存儲(chǔ)結(jié)構(gòu)
2.2.1線性表的順序存儲(chǔ)結(jié)構(gòu)——順序表
2.2.2順序表基本運(yùn)算的實(shí)現(xiàn)
2.3線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
2.3.1線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)——鏈表
2.3.2單鏈表
2.3.3雙鏈表
2.3.4循環(huán)鏈表
2.4線性表的應(yīng)用
本章小結(jié)
練習(xí)題2
第3章棧和隊(duì)列
3.1棧
3.1.1棧的定義
3.1.2棧的順序存儲(chǔ)結(jié)構(gòu)及其基本運(yùn)算的實(shí)現(xiàn)
3.1.3棧的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)及其基本運(yùn)算的實(shí)現(xiàn)
3.1.4棧的應(yīng)用
3.2隊(duì)列
3.2.1隊(duì)列的定義
3.2.2隊(duì)列的順序存儲(chǔ)結(jié)構(gòu)及其基本運(yùn)算的實(shí)現(xiàn)
3.2.3隊(duì)列的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)及其基本運(yùn)算的實(shí)現(xiàn)
3.2.4隊(duì)列的應(yīng)用
本章小結(jié)
練習(xí)題3
第4章串
4.1串的基本概念
4.1.1什么是串
4.1.2串的抽象數(shù)據(jù)類型
4.2串的存儲(chǔ)結(jié)構(gòu)
4.2.1串的順序存儲(chǔ)結(jié)構(gòu)——順序串
4.2.2串的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)——鏈串
4.3串的模式匹配
4.3.1brute-force算法
4.3.2kmp算法
本章小結(jié)
練習(xí)題4
第5章數(shù)組和廣義表
5.1數(shù)組
5.1.1數(shù)組的定義
5.1.2數(shù)組的存儲(chǔ)結(jié)構(gòu)
5.1.3特殊矩陣的壓縮存儲(chǔ)
5.2稀疏矩陣
5.2.1稀疏矩陣的三元組表示
5.2.2稀疏矩陣的十字鏈表表示
5.3遞歸
5.3.1遞歸的定義
5.3.2何時(shí)使用遞歸
5.3.3遞歸模型
5.3.4遞歸算法設(shè)計(jì)的步驟
5.3.5遞歸算法轉(zhuǎn)換為非遞歸算法
5.4廣義表
5.4.1廣義表的定義
5.4.2廣義表的存儲(chǔ)結(jié)構(gòu)
5.4.3廣義表的運(yùn)算
本章小結(jié)
練習(xí)題5
第6章樹和二叉樹
6.1樹
6.1.1樹的定義
6.1.2樹的邏輯結(jié)構(gòu)表示方法
6.1.3樹的基本術(shù)語
6.1.4樹的性質(zhì)
6.1.5樹的基本運(yùn)算
6.1.6樹的存儲(chǔ)結(jié)構(gòu)
6.2二叉樹
6.2.1二叉樹的定義
6.2.2二叉樹的性質(zhì)
6.2.3二叉樹與樹、森林之間的轉(zhuǎn)換
6.2.4二叉樹的存儲(chǔ)結(jié)構(gòu)
6.2.5二叉樹的基本運(yùn)算及其實(shí)現(xiàn)
6.2.6二叉樹的遍歷
6.2.7二叉樹的構(gòu)造
6.2.8線索二叉樹
6.3哈夫曼樹
6.3.1哈夫曼樹的定義
6.3.2哈夫曼樹的構(gòu)造算法
6.3.3哈夫曼編碼
本章小結(jié)
練習(xí)題6
第7章圖
7.1圖的基本概念
7.1.1圖的定義
7.1.2圖的基本術(shù)語
7.2圖的存儲(chǔ)結(jié)構(gòu)和基本運(yùn)算的實(shí)現(xiàn)
7.2.1鄰接矩陣存儲(chǔ)方法
7.2.2鄰接表存儲(chǔ)方法
7.3圖的遍歷
7.3.1圖的遍歷的概念
7.3.2深度優(yōu)先遍歷
7.3.3廣度優(yōu)先遍歷
7.3.4非連通圖的遍歷
7.3.5圖遍歷算法的應(yīng)用
7.4圖的應(yīng)用
7.4.1生成樹和最小生成樹
7.4.2最短路徑
7.4.3拓?fù)渑判?
7.4.4aoe網(wǎng)與關(guān)鍵路徑
本章小結(jié)
練習(xí)題7
第8章查找
8.1查找的基本概念
8.2線性表的查找
8.2.1順序查找
8.2.2折半查找
8.2.3索引存儲(chǔ)結(jié)構(gòu)和分塊查找
8.3樹表的查找
8.3.1二叉排序樹
8.3.2平衡二叉樹
8.3.3b-樹
8.3.4b+樹
8.4哈希表查找
8.4.1哈希表的基本概念
8.4.2哈希函數(shù)構(gòu)造方法
8.4.3哈希沖突的解決方法
8.4.4哈希表查找及性能分析
本章小結(jié)
練習(xí)題8
第9章內(nèi)排序
9.1排序的基本概念
9.2插入排序
9.2.1直接插入排序
9.2.2折半插入排序
9.2.3希爾排序
9.3交換排序
9.3.1冒泡排序
9.3.2快速排序
9.4選擇排序
9.4.1簡單選擇排序
9.4.2堆排序
9.5歸并排序
9.6基數(shù)排序
9.7各種內(nèi)排序方法的比較和選擇
本章小結(jié)
練習(xí)題9
第10章外排序
10.1外排序概述
10.2磁盤排序
10.2.1磁盤排序過程
10.2.2生成初始?xì)w并段
10.2.3多路平衡歸并
10.2.4最佳歸并樹
本章小結(jié)
練習(xí)題10
附錄a部分練習(xí)題參考答案
參考文獻(xiàn)
封面圖: