注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡數(shù)據(jù)庫數(shù)據(jù)庫理論數(shù)據(jù)結(jié)構(gòu)實用教程(C語言版)

數(shù)據(jù)結(jié)構(gòu)實用教程(C語言版)

數(shù)據(jù)結(jié)構(gòu)實用教程(C語言版)

定 價:¥36.00

作 者: 鄭阿奇 著
出版社: 電子工業(yè)出版社
叢編項:
標 簽: 數(shù)據(jù)庫理論

ISBN: 9787121140365 出版時間: 2011-07-01 包裝: 平裝
開本: 16開 頁數(shù): 308 字數(shù):  

內(nèi)容簡介

  《高等學校計算機教材:數(shù)據(jù)結(jié)構(gòu)實用教程(C語言版)》系統(tǒng)介紹線性表、棧和隊列、串、數(shù)組和廣義表、樹和二叉樹、圖、排序、查找等內(nèi)容。以C語言作為數(shù)據(jù)結(jié)構(gòu)和算法的描述語言。一般先通過應用實例引入,在數(shù)據(jù)類型基本操作介紹后,通過綜合應用實例進行應用和消化。所有的綜合應用實例在Visual C++6.0環(huán)境下調(diào)試、運行通過。通過《高等學校計算機教材:數(shù)據(jù)結(jié)構(gòu)實用教程(C語言版)》學習,不但可以比較容易理解數(shù)據(jù)結(jié)構(gòu)主要內(nèi)容,而且應用數(shù)據(jù)結(jié)構(gòu)知識解決了若干個小應用問題,大大提高學生解決問題的能力。

作者簡介

暫缺《數(shù)據(jù)結(jié)構(gòu)實用教程(C語言版)》作者簡介

圖書目錄

第1章  緒論 (1)
1.1  數(shù)據(jù)結(jié)構(gòu)的基本概念 (1)
1.1.1  基本概念和術(shù)語 (3)
1.1.2  數(shù)據(jù)的邏輯結(jié)構(gòu) (4)
1.1.3  數(shù)據(jù)的存儲結(jié)構(gòu) (6)
1.2  抽象數(shù)據(jù)類型 (7)
1.2.1  什么是抽象數(shù)據(jù)類型 (7)
1.2.2  抽象數(shù)據(jù)類型的描述 (7)
1.3  算法的定義及特征 (8)
1.3.1  算法的定義及特征 (8)
1.3.2  算法設計的要求 (9)
1.4  算法的度量及分析 (9)
1.4.1  算法效率的度量 (9)
1.4.2  時間復雜度分析 (10)
1.4.3  常見的時間復雜度 (11)
1.4.4  空間復雜度分析 (12)
習題 (12)
第2章  線性表 (15)
2.1  定義 (16)
2.1.1  什么是線性表 (16)
2.1.2  線性表的抽象數(shù)據(jù)類型 (16)
2.2  順序線性表 (17)
2.2.1  線性表的順序存儲 (17)
2.2.2  順序表的基本操作 (19)
2.2.3  綜合應用實例——撲克牌游戲 (24)
2.3  鏈式線性表(一) (29)
2.3.1  線性表的鏈式存儲 (29)
2.3.2  單鏈表的基本操作 (31)
2.3.3  綜合應用實例——學生信息管理系統(tǒng) (36)
2.4  鏈式線性表(二) (40)
2.4.1  循環(huán)鏈表 (40)
2.4.2  雙向鏈表 (40)
2.4.3  綜合應用實例——約瑟夫問題 (44)
2.5  順序表與鏈表的比較 (48)
習題 (48)第3章  棧和隊列 (52)
3.1  棧 (52)
3.1.1  定義 (52)
3.1.2  棧的抽象數(shù)據(jù)類型 (53)
3.2  順序棧 (54)
3.2.1  順序棧的存儲結(jié)構(gòu) (54)
3.2.2  順序棧的基本操作 (54)
3.2.3  綜合應用實例——表達式求值 (57)
3.3  鏈棧 (62)
3.3.1  鏈棧的存儲結(jié)構(gòu) (62)
3.3.2  鏈棧的基本操作 (63)
3.3.3  綜合應用實例——老鼠鉆迷宮 (66)
3.4  隊列 (72)
3.4.1  定義 (73)
3.4.2  隊列的抽象數(shù)據(jù)類型 (73)
3.5  順序隊列 (74)
3.5.1  順序隊列的存儲結(jié)構(gòu) (74)
3.5.2  循環(huán)隊列的邏輯結(jié)構(gòu) (75)
3.5.3  循環(huán)隊列的基本操作 (77)
3.5.4  綜合應用實例——打印文檔 (79)
3.6  鏈隊列 (81)
3.6.1  鏈隊列的存儲結(jié)構(gòu) (81)
3.6.2  鏈隊列的基本操作 (81)
3.6.3  綜合應用實例——火車車廂重排 (84)
習題 (89)
第4章  串 (93)
4.1  定義 (93)
4.1.1  什么是串 (93)
4.1.2  串的抽象數(shù)據(jù)類型 (94)
4.2  串的順序存儲 (94)
4.2.1  串的順序存儲結(jié)構(gòu) (95)
4.2.2  順序存儲的基本操作 (95)
4.3  串的堆存儲 (97)
4.3.1  串的堆存儲結(jié)構(gòu) (97)
4.3.2  堆存儲的基本操作 (97)
4.4  串的鏈式存儲 (100)
4.4.1  串的鏈式存儲結(jié)構(gòu) (100)
4.4.2  鏈式存儲的基本操作 (101)
4.5  串的模式匹配 (103)
4.5.1  Brute-Force算法 (103)
 
4.5.2  KMP算法 (104)
4.5.3  綜合應用實例——簡易的“記事本” (110)
習題 (114)
第5章  數(shù)組和廣義表 (116)
5.1  數(shù)組 (116)
5.1.1  數(shù)組的定義及存儲 (116)
5.1.2  數(shù)組的抽象數(shù)據(jù)類型 (118)
5.2  特殊矩陣 (118)
5.2.1  對稱矩陣 (118)
5.2.2  三角矩陣 (119)
5.2.3  對角矩陣 (120)
5.3  稀疏矩陣 (121)
5.3.1  稀疏矩陣的存儲結(jié)構(gòu) (121)
5.3.2  稀疏矩陣的基本操作 (122)
5.3.3  稀疏矩陣的十字鏈表表示 (126)
5.4  廣義表 (129)
5.4.1  廣義表的定義 (130)
5.4.2  廣義表的抽象數(shù)據(jù)類型 (131)
5.4.3  廣義表的存儲結(jié)構(gòu) (131)
5.4.4  廣義表的基本操作 (132)
5.4.5  綜合應用實例——文件目錄結(jié)構(gòu) (136)
習題 (139)
第6章  樹及二叉樹 (142)
6.1  樹及其表示 (143)
6.1.1  樹的定義和術(shù)語 (143)
6.1.2  樹的邏輯表示 (145)
6.1.3  樹的抽象數(shù)據(jù)類型 (146)
6.1.4  樹的存儲結(jié)構(gòu) (146)
6.2  二叉樹 (149)
6.2.1  二叉樹的定義 (149)
6.2.2  二叉樹的性質(zhì) (151)
6.2.3  二叉樹的抽象數(shù)據(jù)類型 (151)
6.2.4  二叉樹的存儲結(jié)構(gòu) (152)
6.2.5  二叉樹的基本操作 (154)
6.2.6  二叉樹的遍歷 (157)
6.2.7  綜合應用實例——算術(shù)表達式的計算 (158)
6.3  二叉樹的線索化 (162)
6.3.1  線索二叉樹的定義 (163)
6.3.2  中序線索化二叉樹 (163)
6.3.3  線索二叉樹的操作 (165)
6.4  樹、森林與二叉樹的轉(zhuǎn)換 (167)
6.4.1  樹與二叉樹的相互轉(zhuǎn)化 (167)
6.4.2  森林與二叉樹的相互轉(zhuǎn)換 (168)
6.5  哈夫曼樹及哈夫曼編碼 (170)
6.5.1  哈夫曼樹 (170)
6.5.2  哈夫曼編碼 (173)
6.5.3  綜合應用實例——電報編碼 (176)
習題 (179)
第7章  圖 (184)
7.1  定義 (184)
7.1.1  什么是圖 (184)
7.1.2  圖的常用術(shù)語 (185)
7.1.3  圖的抽象數(shù)據(jù)類型 (188)
7.2  圖的存儲結(jié)構(gòu) (189)
7.2.1  鄰接矩陣 (189)
7.2.2  鄰接表 (191)
7.2.3  十字鏈表 (194)
7.3  圖的遍歷 (195)
7.3.1  深度優(yōu)先搜索 (195)
7.3.2  廣度優(yōu)先搜索 (197)
7.4  最小生成樹 (199)
7.4.1  普里姆算法 (200)
7.4.2  克魯斯卡爾算法 (202)
7.5  最短路徑 (204)
7.5.1  從某個源點到其余各頂點的最短路徑 (205)
7.5.2  每一對頂點之間的最短路徑 (207)
7.5.3  綜合應用實例——高速公路行駛最佳方案 (209)
7.6  拓撲排序和關(guān)鍵路徑 (212)
7.6.1  拓撲排序 (213)
7.6.2  關(guān)鍵路徑 (215)
7.6.3  綜合應用實例——計算機課程學習的優(yōu)先順序 (219)
習題 (221)
第8章  排序 (227)
8.1  定義 (228)
8.1.1  什么是排序 (228)
8.1.2  排序算法的分類 (229)
8.2  插入排序 (229)
8.2.1  直接插入排序 (230)
8.2.2  二分插入排序 (231)
8.2.3  希爾排序 (232)
 
8.3  交換排序 (233)
8.3.1  冒泡排序 (233)
8.3.2  快速排序 (236)
8.4  選擇排序 (238)
8.4.1  直接選擇排序 (238)
8.4.2  堆排序 (240)
8.5  歸并排序 (244)
8.6  基數(shù)排序 (245)
8.7  幾種排序算法的比較 (247)
習題 (248)
第9章  查找 (251)
9.1  定義 (251)
9.1.1  什么是查找 (251)
9.1.2  查找的性能分析 (252)
9.2  靜態(tài)查找 (253)
9.2.1  順序表的查找 (253)
9.2.2  有序表的查找 (254)
9.2.3  索引順序表的查找 (256)
9.3  動態(tài)查找 (257)
9.3.1  二叉排序樹 (258)
9.3.2  平衡二叉樹 (263)
9.3.3  B-樹和B+樹 (266)
9.4  哈希表 (270)
9.4.1  定義 (271)
9.4.2  哈希函數(shù)的構(gòu)造方法 (272)
 
9.4.3  處理沖突的方法 (274)
9.4.4  哈希表的基本操作 (276)
習題 (278)
附錄A  認識Visual C++ 6.0中文版開發(fā)環(huán)境 (282)
附錄B  程序組織、預處理和調(diào)試 (292)
B.1  設置斷點 (292)
B.2  控制程序運行 (293)
B.3  查看變量或數(shù)組的內(nèi)容 (294)
B.4  退出Visual C++ 6.0 (295)

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.autoforsalebyowners.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號