數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言描述)
-
【作 者】馬秋菊 主編
【I S B N 】978-7-5084-3839-6
【責(zé)任編輯】張玉玲
【適用讀者群】高職高專
【出版時(shí)間】2006-09-01
【開 本】16開本
【裝幀信息】平裝(光膜)
【版 次】第1版
【頁(yè) 數(shù)】204
【千字?jǐn)?shù)】
【印 張】
【定 價(jià)】¥20
【叢 書】21世紀(jì)高職高專新概念教材
【備注信息】
簡(jiǎn)介
本書特色
前言
章節(jié)列表
精彩閱讀
下載資源
相關(guān)圖書
本書所選內(nèi)容都是高職高專計(jì)算機(jī)及相關(guān)專業(yè)必須掌握的知識(shí)點(diǎn),全書共9章,主要內(nèi)容包括:線性表、棧和隊(duì)列、數(shù)組、特殊矩陣和廣義表、串、樹、圖、查找和排序等。各章中對(duì)所涉及的數(shù)據(jù)結(jié)構(gòu)與算法均給出了通俗的解釋和類C語(yǔ)言描述,其中的重點(diǎn)內(nèi)容是以C語(yǔ)言函數(shù)或過程形式給出的,同時(shí)在每章后面的上機(jī)實(shí)習(xí)中給出了具體應(yīng)用調(diào)用(已經(jīng)運(yùn)行通過),其目的是使讀者能夠?qū)W(xué)到的知識(shí)落實(shí)到應(yīng)用中。
本書內(nèi)容精煉、敘述通俗、示例說服力強(qiáng)、便于講解和學(xué)習(xí)、突出實(shí)用性和應(yīng)用性。
本書可作為高等職業(yè)學(xué)校、高等專科學(xué)校、成人高等學(xué)校及本科院校舉辦的二級(jí)職業(yè)技術(shù)學(xué)院計(jì)算機(jī)及相關(guān)專業(yè)數(shù)據(jù)結(jié)構(gòu)的教材,也適合計(jì)算機(jī)軟件開發(fā)的科技人員自學(xué)參考。
“數(shù)據(jù)結(jié)構(gòu)”是計(jì)算機(jī)程序設(shè)計(jì)的重要理論技術(shù)基礎(chǔ),是計(jì)算機(jī)專業(yè)的核心課程。在目前大力發(fā)展職業(yè)技術(shù)應(yīng)用教育的新形勢(shì)下,急需概念通俗易懂,知識(shí)針對(duì)性強(qiáng),實(shí)驗(yàn)、實(shí)習(xí)及工程訓(xùn)練等內(nèi)容齊全的教科書,本書正是針對(duì)這種目的編寫的。本書系統(tǒng)地介紹了各種數(shù)據(jù)結(jié)構(gòu)的概念、存儲(chǔ)結(jié)構(gòu)和有關(guān)算法,并采用了當(dāng)前通用的C語(yǔ)言描述算法。主要內(nèi)容包括緒論、線性表、棧和隊(duì)列、數(shù)組、串、樹、圖、查找和排序等。
參加本書編寫的作者全部是有本課程教學(xué)實(shí)踐和課程建設(shè)經(jīng)驗(yàn)的教師,在多年的教學(xué)和課程建設(shè)的實(shí)踐中,我們體會(huì)到,學(xué)生在學(xué)習(xí)中普遍存在的突出問題是:入門難、算法抽象難理解、算法與實(shí)現(xiàn)和應(yīng)用存在一定距離、應(yīng)用針對(duì)性差等,制約著學(xué)習(xí)效果。針對(duì)實(shí)際情況,我們進(jìn)行了充分的討論,在本課程建設(shè)的基礎(chǔ)上,制定了本書的編寫原則:重視基礎(chǔ),循序漸進(jìn),內(nèi)容精煉,敘述通俗,重點(diǎn)突出,示例說服力強(qiáng),便于講解和學(xué)習(xí),強(qiáng)調(diào)理論與實(shí)踐相結(jié)合,突出實(shí)踐和應(yīng)用能力的培養(yǎng)。
本書的主要特點(diǎn)如下:
(1)教學(xué)內(nèi)容的深度與廣度合適、定位準(zhǔn)確,具有鮮明的高職高專特色。
所選擇的教學(xué)內(nèi)容既體現(xiàn)了應(yīng)用型人才教育對(duì)基礎(chǔ)理論知識(shí)較扎實(shí)的要求即夠用,又兼顧了知識(shí)的系統(tǒng)性與完整性、應(yīng)用性和工程實(shí)踐性。
(2)融入先進(jìn)教學(xué)理念,概念通俗易懂、知識(shí)針對(duì)性強(qiáng),符合應(yīng)用型人才認(rèn)知規(guī)律。
體現(xiàn)“以學(xué)生為主體”的現(xiàn)代教學(xué)理念,選擇了具有啟發(fā)性、思考性和鼓勵(lì)自主學(xué)習(xí)的教學(xué)內(nèi)容,設(shè)計(jì)了引發(fā)學(xué)生學(xué)習(xí)與探究興趣的“驅(qū)動(dòng)問題”,面向教學(xué)方法和過程,語(yǔ)言通俗,降低難度,針對(duì)性強(qiáng),重點(diǎn)突出。
(3)算法描述清晰,有利于教師講解。
在算法思想和算法描述中,盡量避免教學(xué)過程中的混淆,如“關(guān)鍵字”使用key標(biāo)識(shí)符,則在同一問題中就不再選擇key作為其他變量,使教學(xué)、理解更簡(jiǎn)單。
(4)強(qiáng)調(diào)理論與實(shí)踐相結(jié)合,突出實(shí)踐和應(yīng)用能力的培養(yǎng)。
在重點(diǎn)知識(shí)突出的基礎(chǔ)上,強(qiáng)調(diào)算法的具體實(shí)現(xiàn):以C語(yǔ)言函數(shù)或過程形式給出內(nèi)容,同時(shí)在每章后面的上機(jī)實(shí)習(xí)中給出了具體應(yīng)用調(diào)用(已經(jīng)運(yùn)行通過),達(dá)到學(xué)以致用的目的,培養(yǎng)學(xué)生具有完整應(yīng)用程序的開發(fā)理念,對(duì)應(yīng)用系統(tǒng)開發(fā)有一個(gè)明晰的概念。
(5)本書配備了電子教案等相關(guān)教學(xué)資源。
電子教案中的實(shí)例是在PowerPoint環(huán)境下嵌入VBA技術(shù)來實(shí)現(xiàn)算法與數(shù)據(jù)處理的,使教學(xué)更形象、更容易理解,另外還可提供源代碼、同步訓(xùn)練題等資料。
本書可作為職業(yè)技術(shù)應(yīng)用型計(jì)算機(jī)專業(yè)教材,建議講授學(xué)時(shí)為60~70學(xué)時(shí)。
本書由馬秋菊主編,王學(xué)軍、劉延嶺任副主編。本書主要編寫人員分工如下:第1~5章由馬秋菊編寫,第6章由殷華英編寫,第7~9章由王學(xué)軍編寫;上機(jī)實(shí)習(xí)內(nèi)容的第2、4~7章由劉延嶺編寫,第8、9章由張清濤編寫,第3章由劉延嶺與張清濤共同編寫,全書由馬秋菊和劉延嶺統(tǒng)稿。另外參加大綱討論、提供實(shí)用信息的人員還有:孔小利、宋漢珍、李海明、郝春雷、董國(guó)增、謝懿、張占昭、李小芳、薛茹等老師。在編寫過程中,得到了主審馬曉晨副教授和相關(guān)專家的指導(dǎo),在此一并表示衷心的感謝。
由于編者水平有限,書中難免有一些不足之處,懇請(qǐng)廣大讀者批評(píng)指正。
前言
第1章 數(shù)據(jù)結(jié)構(gòu)概述 1
本章學(xué)習(xí)目標(biāo) 1
1.1 為什么要學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu) 1
1.2 數(shù)據(jù)結(jié)構(gòu)的有關(guān)概念和術(shù)語(yǔ) 3
1.2.1 基本概念和術(shù)語(yǔ) 3
1.2.2 數(shù)據(jù)結(jié)構(gòu)定義 4
1.3 算法和算法描述 5
1.3.1 算法與算法特性 5
1.3.2 算法描述 6
1.4 算法時(shí)空效率分析方法 7
習(xí)題 9
第2章 線性表 12
本章學(xué)習(xí)目標(biāo) 12
2.1 線性表的邏輯結(jié)構(gòu) 12
2.1.1 線性表的定義 12
2.1.2 線性表的基本操作 13
2.2 線性表的順序存儲(chǔ)結(jié)構(gòu)及運(yùn)算實(shí)現(xiàn) 13
2.2.1 順序表 13
2.2.2 順序表上基本運(yùn)算的實(shí)現(xiàn) 14
2.3 線性表的鏈?zhǔn)酱鎯?chǔ)和運(yùn)算實(shí)現(xiàn) 18
2.3.1 單鏈表 18
2.3.2 單鏈表基本運(yùn)算的實(shí)現(xiàn) 20
2.3.3 循環(huán)鏈表 24
2.3.4 雙向鏈表 25
2.3.5 靜態(tài)鏈表 28
2.3.6 順序表和鏈表的比較 29
2.4 線性表的典型應(yīng)用 29
習(xí)題 32
上機(jī)實(shí)習(xí) 33
第3章 棧和隊(duì)列 39
3.1 棧 39
3.1.1 棧的定義及基本運(yùn)算 39
3.1.2 棧的順序存儲(chǔ)結(jié)構(gòu)及運(yùn)算實(shí)現(xiàn) 40
3.1.3 棧的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)及運(yùn)算實(shí)現(xiàn) 42
3.2 隊(duì)列 43
3.2.1 隊(duì)列的定義及基本運(yùn)算 43
3.2.2 隊(duì)列的順序存儲(chǔ)結(jié)構(gòu)及運(yùn)算實(shí)現(xiàn) 44
3.2.3 隊(duì)列的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)及運(yùn)算實(shí)現(xiàn) 46
3.3 棧和隊(duì)列的典型應(yīng)用 48
習(xí)題 56
上機(jī)實(shí)習(xí) 57
第4章 數(shù)組、特殊矩陣和廣義表 64
本章學(xué)習(xí)目標(biāo) 64
4.1 數(shù)組 64
4.1.1 數(shù)組的基本概念 64
4.1.2 數(shù)組的存儲(chǔ)結(jié)構(gòu) 65
4.2 特殊矩陣的壓縮存儲(chǔ) 66
4.2.1 對(duì)稱矩陣 66
4.2.2 三角矩陣 67
4.2.3 對(duì)角矩陣 68
4.2.4 稀疏矩陣 69
4.3 廣義表 75
4.3.1 廣義表的定義和性質(zhì) 75
4.3.2 廣義表的基本運(yùn)算 76
習(xí)題 76
上機(jī)實(shí)習(xí) 77
第5章 串 80
本章學(xué)習(xí)目標(biāo) 80
5.1 串的定義及其基本運(yùn)算 80
5.1.1 串的基本概念 80
5.1.2 串的基本運(yùn)算 80
5.2 串的存儲(chǔ)結(jié)構(gòu) 81
5.2.1 串的順序存儲(chǔ) 81
5.2.2 串的鏈?zhǔn)酱鎯?chǔ) 82
5.3 串運(yùn)算的應(yīng)用 83
習(xí)題 85
上機(jī)實(shí)習(xí) 86
第6章 樹 89
本章學(xué)習(xí)目標(biāo) 89
6.1 樹的概念與表示 89
6.1.1 樹的定義 89
6.1.2 樹的相關(guān)術(shù)語(yǔ) 90
6.1.3 樹的表示 91
6.2 二叉樹的概念與性質(zhì) 91
6.2.1 二叉樹的基本概念 91
6.2.2 二叉樹的重要性質(zhì) 92
6.3 二叉樹的存儲(chǔ)結(jié)構(gòu) 93
6.3.1 順序存儲(chǔ)結(jié)構(gòu) 93
6.3.2 鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu) 94
6.3.3 建立二叉樹的二叉鏈表 95
6.4 二叉樹的遍歷 96
6.5 線索二叉樹 100
6.5.1 線索二叉樹的定義及結(jié)構(gòu) 100
6.5.2 中序線索二叉樹操作 102
6.6 樹的存儲(chǔ)結(jié)構(gòu) 104
6.7 樹、森林與二叉樹的轉(zhuǎn)換 105
6.7.1 樹和森林轉(zhuǎn)換為二叉樹 105
6.7.2 二叉樹還原為樹和森林 107
6.8 哈夫曼樹及其應(yīng)用 107
習(xí)題 113
上機(jī)實(shí)習(xí) 114
第7章 圖 118
本章學(xué)習(xí)目標(biāo) 118
7.1 圖的基本概念 118
7.2 圖的存儲(chǔ)表示 120
7.2.1 鄰接矩陣 120
7.2.2 鄰接表 121
7.3 圖的遍歷 123
7.3.1 深度優(yōu)先遍歷(DFS) 123
7.3.2 廣度優(yōu)先遍歷(BFS) 124
7.4 圖的生成樹 125
7.4.1 生成樹 125
7.4.2 最小生成樹的基本概念 126
7.4.3 構(gòu)造最小生成樹的Prim算法 126
7.4.4 構(gòu)造最小生成樹的Kruskal算法 128
7.5 最短路徑 128
7.6 拓?fù)渑判?#160;131
7.6.1 有向無環(huán)圖的概念 131
7.6.2 AOV網(wǎng)與拓?fù)渑判?#160;131
7.7 關(guān)鍵路徑 134
7.7.1 AOE網(wǎng) 134
7.7.2 關(guān)鍵路徑 135
7.7.3 關(guān)鍵路徑的確定 135
7.8 工程應(yīng)用實(shí)例 136
習(xí)題 138
上機(jī)實(shí)習(xí) 140
第8章 查找 145
本章學(xué)習(xí)目標(biāo) 145
8.1 基本概念與術(shù)語(yǔ) 145
8.2 靜態(tài)查找表 145
8.2.1 靜態(tài)查找表結(jié)構(gòu) 145
8.2.2 順序查找 146
8.2.3 二分查找 147
8.2.4 分塊查找 149
8.3 動(dòng)態(tài)查找表 150
8.3.1 二叉排序樹 150
8.3.2 二叉排序樹的建立 150
8.3.3 平衡二叉樹 154
8.3.4 B樹 156
8.4 哈希表查找 157
8.4.1 哈希表與哈希方法 157
8.4.2 常用的哈希函數(shù) 158
8.4.3 處理沖突的方法 160
8.4.4 哈希表的查找分析 161
習(xí)題 161
上機(jī)實(shí)習(xí) 162
第9章 排序 166
本章學(xué)習(xí)目標(biāo) 166
9.1 基本概念 166
9.2 插入排序 167
9.2.1 直接插入排序 167
9.2.2 希爾排序 168
9.3 交換排序 169
9.3.1 冒泡排序 169
9.3.2 快速排序 170
9.4 選擇排序 172
9.4.1 直接選擇排序 172
9.4.2 堆排序(Heap Sort) 174
9.5 歸并排序 176
9.6 基數(shù)排序 178
9.7 內(nèi)部排序的比較 180
9.8 外部排序 180
9.8.1 外部排序 180
9.8.2 多路平衡歸并的實(shí)現(xiàn) 182
習(xí)題 182
上機(jī)實(shí)習(xí) 183
參考文獻(xiàn) 187
- 數(shù)據(jù)結(jié)構(gòu)(Python語(yǔ)言描述) [曹岳輝 劉衛(wèi)國(guó) 康松林 編著]
- 數(shù)據(jù)結(jié)構(gòu)——C語(yǔ)言(微課版) [主編 梁海英]
- 數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)習(xí)題解答及實(shí)訓(xùn)指導(dǎo) [李根強(qiáng) 謝月娥]
- 數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版) [主編 李根強(qiáng) 劉浩 謝月娥]
- 數(shù)據(jù)結(jié)構(gòu)(Java版) [主編 李云平]
- 數(shù)據(jù)結(jié)構(gòu) [主編 韓利凱 朱浩悅]
- 數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)(第三版) [主編 庫(kù)波 曹靜]
- 數(shù)據(jù)結(jié)構(gòu)(Java版) [孫琳 張宇]
- 數(shù)據(jù)結(jié)構(gòu) [許繪香 段明義]
- 數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言描述) [李素若 陳萬(wàn)華 游明坤 編著]
- 數(shù)據(jù)結(jié)構(gòu)習(xí)題解答及上機(jī)指導(dǎo) [李素若 琚輝 嚴(yán)永松 編著]
- 數(shù)據(jù)結(jié)構(gòu)(C++描述)習(xí)題解答及實(shí)習(xí)指導(dǎo) [李根強(qiáng) 謝月娥 主編]
- 數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)學(xué)習(xí)指導(dǎo)與習(xí)題解答 [趙堅(jiān) 姜梅 主編]
- 數(shù)據(jù)結(jié)構(gòu) [陸勤 主編 ]
- 數(shù)據(jù)結(jié)構(gòu)(C++描述) [李根強(qiáng) 主 編]
- 數(shù)據(jù)結(jié)構(gòu)(C++版)--習(xí)題解答及實(shí)習(xí)指導(dǎo) [李根強(qiáng) 主編]
- 數(shù)據(jù)結(jié)構(gòu)算法--Visual C++ 6.0程序集 [侯識(shí)忠 等編著]
- 數(shù)據(jù)結(jié)構(gòu)算法--C++ Builder 6.0程序集 [侯識(shí)忠 等編著]
- 數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)學(xué)習(xí)指導(dǎo)與習(xí)題解答 [趙堅(jiān) 姜梅 主編]
- 數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版) [趙堅(jiān) 姜梅 主編]
- 數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言描述) [斯慶巴拉 主編]
- 數(shù)據(jù)結(jié)構(gòu)(C++版)(第二版) [李根強(qiáng)]
- 數(shù)據(jù)結(jié)構(gòu)(C++版)(第二版)習(xí)題解答及實(shí)訓(xùn)指導(dǎo) [李根強(qiáng)]
- 數(shù)據(jù)結(jié)構(gòu)——用C語(yǔ)言描述 [蔡明志 編著]
- 數(shù)據(jù)結(jié)構(gòu)(C++版) [李根強(qiáng) 主編]
- 數(shù)據(jù)結(jié)構(gòu)--用C語(yǔ)言描述(第二版) [寧正元 易金聰 編著]
- 數(shù)據(jù)結(jié)構(gòu)(C/C++描述) [阮宏一 主編]
- 數(shù)據(jù)結(jié)構(gòu)--C語(yǔ)言描述(第二版) [王路群 主編]
- 數(shù)據(jù)結(jié)構(gòu)、算法與應(yīng)用(Java語(yǔ)言描述) [[美]Sartaj Sahni(薩爾塔杰.薩]
- 數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)程序 [智東杰 主 編]
- 生活經(jīng)管more>>
- 信號(hào)與系統(tǒng)
- AutoCAD 2012實(shí)用教程
- 旅游信息化簡(jiǎn)明教程
- 數(shù)據(jù)庫(kù)系統(tǒng)原理及應(yīng)用——PowerBuilder
- 數(shù)據(jù)結(jié)構(gòu)(C++描述)習(xí)題解答及實(shí)習(xí)指
- Visual Basic程序設(shè)計(jì)
- 單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與訓(xùn)練
- 多媒體技術(shù)與應(yīng)用(第二版)
- 網(wǎng)站建設(shè)原理與實(shí)踐
- Internet與網(wǎng)頁(yè)設(shè)計(jì)
- 網(wǎng)絡(luò)綜合布線技術(shù)
- 計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)集成
- 計(jì)算機(jī)及網(wǎng)絡(luò)維護(hù)技術(shù)
- Visual Basic.NET程序設(shè)計(jì)
- C++程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)與實(shí)訓(xùn)
- 計(jì)算機(jī)網(wǎng)絡(luò)操作系統(tǒng)——Windows 2000 S

