數(shù)據(jù)結(jié)構(gòu)(Java版)

-
【作 者】主編 李云平
【I S B N 】978-7-5170-4933-3
【責(zé)任編輯】李炎
【適用讀者群】本專(zhuān)通用
【出版時(shí)間】2017-01-01
【開(kāi) 本】16開(kāi)
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁(yè) 數(shù)】308
【千字?jǐn)?shù)】426
【印 張】19.25
【定 價(jià)】¥39
【叢 書(shū)】高等職業(yè)教育精品示范教材(電子信息課程群)
【備注信息】
簡(jiǎn)介
本書(shū)特色
前言
章節(jié)列表
精彩閱讀
下載資源
相關(guān)圖書(shū)
本書(shū)涵蓋了各種數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)知識(shí)及其算法設(shè)計(jì)和Java代碼實(shí)現(xiàn),并輔之以大量的理論習(xí)題和實(shí)訓(xùn)任務(wù),以此增進(jìn)讀者對(duì)數(shù)據(jù)結(jié)構(gòu)的理解與掌握。全書(shū)共分為8個(gè)模塊,內(nèi)容包括概述,線(xiàn)性表,棧和隊(duì)列,數(shù)組、串和廣義表,樹(shù)和二叉樹(shù),圖,排序,查找。
本書(shū)按照“實(shí)例引入-邏輯結(jié)構(gòu)-存儲(chǔ)結(jié)構(gòu)-基本運(yùn)算的實(shí)現(xiàn)-典型應(yīng)用舉例-知識(shí)鞏固”的順序?qū)Ω鞣N數(shù)據(jù)結(jié)構(gòu)進(jìn)行介紹。每章均由實(shí)例引入,并配備一定數(shù)量的應(yīng)用實(shí)例供學(xué)生進(jìn)行上機(jī)練習(xí),有助于理解理論知識(shí)、提高編程能力。
體現(xiàn)以就業(yè)為導(dǎo)向、產(chǎn)學(xué)結(jié)合的發(fā)展道路。學(xué)科和專(zhuān)業(yè)同步加強(qiáng),按企業(yè)需要和崗位需求對(duì)接培養(yǎng)內(nèi)容。
采用項(xiàng)目驅(qū)動(dòng)、案例引導(dǎo)的編寫(xiě)模式。堅(jiān)持“工作流程化”“任務(wù)驅(qū)動(dòng)式”,突出“走向職業(yè)化”的特點(diǎn)。
專(zhuān)家、教師共建團(tuán)隊(duì),優(yōu)化編寫(xiě)隊(duì)伍。把握行業(yè)發(fā)展和創(chuàng)新教材發(fā)展的方向,融入專(zhuān)業(yè)教學(xué)的課程設(shè)置與教材內(nèi)容。
開(kāi)發(fā)課程教學(xué)資源,推進(jìn)專(zhuān)業(yè)信息化建設(shè)。開(kāi)發(fā)網(wǎng)絡(luò)課程、虛擬仿真實(shí)訓(xùn)平臺(tái)等數(shù)字化教學(xué)資源,建立動(dòng)態(tài)、共享的課程信息化資源庫(kù)。
“數(shù)據(jù)結(jié)構(gòu)”是計(jì)算機(jī)及相關(guān)專(zhuān)業(yè)的重要專(zhuān)業(yè)基礎(chǔ)課程。通過(guò)本門(mén)課程的學(xué)習(xí),學(xué)生不僅要掌握基本的理論知識(shí),更重要的是要提高自身的實(shí)踐能力。本書(shū)就是以計(jì)算機(jī)軟件相關(guān)工作崗位員工必須掌握的知識(shí)為核心,以高職教育所培養(yǎng)的學(xué)生應(yīng)具備的能力為依據(jù),以突出實(shí)踐性和實(shí)用性為目的進(jìn)行設(shè)計(jì)編寫(xiě)的。
全書(shū)共分為8個(gè)模塊,內(nèi)容包括概述,線(xiàn)性表,棧和隊(duì)列,數(shù)組、串和廣義表,樹(shù)和二叉樹(shù),圖,排序,查找。并附有配套源代碼、教學(xué)PPT、教學(xué)實(shí)施案例、教學(xué)設(shè)計(jì)大綱、習(xí)題答案等教學(xué)資源。
本書(shū)是根據(jù)高職高專(zhuān)教育的特點(diǎn)進(jìn)行組織和編寫(xiě)的,參加本書(shū)編寫(xiě)的人員均為一線(xiàn)項(xiàng)目研發(fā)人員且又都是多年教授數(shù)據(jù)結(jié)構(gòu)和Java系列課程的教學(xué)一線(xiàn)骨干教師。本書(shū)主要特色有:
(1)對(duì)各類(lèi)數(shù)據(jù)結(jié)構(gòu)的分析按照“實(shí)例引入-邏輯結(jié)構(gòu)-存儲(chǔ)結(jié)構(gòu)-基本運(yùn)算的代碼實(shí)現(xiàn)-典型應(yīng)用實(shí)例-知識(shí)鞏固”的順序進(jìn)行講述。
(2)內(nèi)容選取合理,組織得當(dāng)。理論部分以夠用為度,突出實(shí)踐內(nèi)容。每章都由實(shí)例引入,并且配套一定數(shù)量的應(yīng)用實(shí)例(配有完整代碼)進(jìn)行上機(jī)練習(xí),有助于對(duì)理論知識(shí)的理解,并提高學(xué)生的Java編程能力。
(3)每章知識(shí)鞏固部分為學(xué)生提供了理論知識(shí)、真題在線(xiàn)、實(shí)訓(xùn)任務(wù)三個(gè)方面的練習(xí)題!袄碚撝R(shí)”部分的習(xí)題都是精挑細(xì)選的,有加強(qiáng)概念理解的選擇題、判斷題,有幫助理解算法思想的簡(jiǎn)答題,也有培養(yǎng)算法設(shè)計(jì)能力的算法設(shè)計(jì)題;“真題在線(xiàn)”部分提供了歷年計(jì)算機(jī)等級(jí)考試、程序員考試涉及到的真題;“實(shí)訓(xùn)任務(wù)”部分提供了完整的、可運(yùn)行的程序上機(jī)實(shí)驗(yàn)供讀者參考,以加深讀者對(duì)所學(xué)知識(shí)的理解和應(yīng)用。
本書(shū)適合作為高職高專(zhuān)計(jì)算機(jī)及相關(guān)專(zhuān)業(yè)的“數(shù)據(jù)結(jié)構(gòu)”課程教材,也可作為計(jì)算機(jī)應(yīng)用系統(tǒng)開(kāi)發(fā)人員及相關(guān)人員學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)知識(shí)的參考書(shū)或培訓(xùn)教材。
本書(shū)由李云平任主編,梁平、張揚(yáng)、曹燕任副主編,參加編寫(xiě)的有許博、紀(jì)全、孫成昊老師,也為本書(shū)的校對(duì)和資源建設(shè)做了大量細(xì)致的工作,中國(guó)水利水電出版社的有關(guān)負(fù)責(zé)同志對(duì)本書(shū)的出版給予了大力支持。在本書(shū)編寫(xiě)過(guò)程中參考了大量國(guó)內(nèi)外計(jì)算機(jī)網(wǎng)絡(luò)文獻(xiàn)資料,在此,謹(jǐn)向這些著作者以及為本書(shū)出版付出辛勤勞動(dòng)的同志深表感謝。
由于作者水平所限,書(shū)中難免有不足與疏漏之處,敬請(qǐng)廣大讀者批評(píng)指正。
前言
模塊1 概述 1
1.1 什么是數(shù)據(jù)結(jié)構(gòu) 2
1.1.1 數(shù)據(jù)結(jié)構(gòu)的起源及發(fā)展?fàn)顩r 2
1.1.2 數(shù)據(jù)結(jié)構(gòu)的3種基本結(jié)構(gòu) 2
1.2 數(shù)據(jù)結(jié)構(gòu)的相關(guān)概念和術(shù)語(yǔ) 5
1.3 數(shù)據(jù)結(jié)構(gòu)的研究?jī)?nèi)容 6
1.3.1 邏輯結(jié)構(gòu) 6
1.3.2 存儲(chǔ)結(jié)構(gòu) 7
1.3.3 運(yùn)算 8
1.3.4 數(shù)據(jù)結(jié)構(gòu)三方面的關(guān)系 8
1.4 數(shù)據(jù)類(lèi)型與抽象數(shù)據(jù)類(lèi)型 9
1.4.1 數(shù)據(jù)類(lèi)型 9
1.4.2 抽象數(shù)據(jù)類(lèi)型 9
1.5 算法及其性能分析 9
1.5.1 數(shù)據(jù)結(jié)構(gòu)與算法的關(guān)系 10
1.5.2 算法的概念及特點(diǎn) 10
1.5.3 算法的設(shè)計(jì)要求 11
1.5.4 算法的性能分析 11
1.6 小結(jié) 14
1.7 知識(shí)鞏固 14
1.7.1 理論知識(shí) 14
1.7.2 實(shí)訓(xùn)任務(wù) 15
模塊2 線(xiàn)性表 16
2.1 實(shí)例引入 17
2.2 線(xiàn)性表的邏輯結(jié)構(gòu) 18
2.2.1 線(xiàn)性表的定義 18
2.2.2 線(xiàn)性表的基本運(yùn)算 19
2.3 線(xiàn)性表的順序存儲(chǔ)結(jié)構(gòu)及運(yùn)算實(shí)現(xiàn) 20
2.3.1 順序表的定義 20
2.3.2 順序表的基本運(yùn)算實(shí)現(xiàn) 21
2.3.3 順序表在Java類(lèi)庫(kù)中的實(shí)現(xiàn) 24
2.4 線(xiàn)性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)及運(yùn)算實(shí)現(xiàn) 25
2.4.1 單鏈表 26
2.4.2 雙向鏈表 29
2.4.3 循環(huán)鏈表 32
2.4.4 鏈表在Java類(lèi)庫(kù)中的實(shí)現(xiàn) 33
2.5 應(yīng)用舉例 34
2.5.1 使用順序表實(shí)現(xiàn)教師電話(huà)管理系統(tǒng) 34
2.5.2 使用鏈表實(shí)現(xiàn)教師電話(huà)管理系統(tǒng) 39
2.6 小結(jié) 45
2.7 知識(shí)鞏固 46
2.7.1 理論知識(shí) 46
2.7.2 真題在線(xiàn) 48
2.7.3 實(shí)訓(xùn)任務(wù) 50
模塊3 棧和隊(duì)列 51
3.1 實(shí)例引入 52
3.2 棧 52
3.2.1 棧的概念及基本運(yùn)算 52
3.2.2 棧的順序存儲(chǔ)結(jié)構(gòu)及其算法實(shí)現(xiàn) 53
3.2.3 棧的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)及其算法實(shí)現(xiàn) 56
3.2.4 棧在Java類(lèi)庫(kù)中的實(shí)現(xiàn) 58
3.3 隊(duì)列 58
3.3.1 隊(duì)列的概念及基本運(yùn)算 58
3.3.2 隊(duì)列的順序存儲(chǔ)結(jié)構(gòu)及其算法實(shí)現(xiàn) 59
3.3.3 隊(duì)列的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)及其算法實(shí)現(xiàn) 63
3.3.4 隊(duì)列在Java類(lèi)庫(kù)中的實(shí)現(xiàn) 64
3.4 應(yīng)用舉例 65
3.4.1 棧的應(yīng)用舉例 65
3.4.2 隊(duì)列的應(yīng)用舉例 69
3.5 小結(jié) 71
3.6 知識(shí)鞏固 72
3.6.1 理論知識(shí) 72
3.6.2 真題在線(xiàn) 74
3.6.3 實(shí)訓(xùn)任務(wù) 78
模塊4 數(shù)組、串和廣義表 79
4.1 實(shí)例引入 79
4.2 數(shù)組 80
4.2.1 數(shù)組的邏輯結(jié)構(gòu) 80
4.2.2 數(shù)組的順序存儲(chǔ)結(jié)構(gòu) 82
4.2.3 特殊矩陣的壓縮存儲(chǔ) 83
4.3 串 89
4.3.1 串的基本概念 89
4.3.2 串的基本運(yùn)算 90
4.3.3 串的存儲(chǔ)結(jié)構(gòu) 93
4.4 廣義表 94
4.5 應(yīng)用舉例 96
4.5.1 求班級(jí)成績(jī)的平均分和最高分 96
4.5.2 矩陣相乘 97
4.6 小結(jié) 98
4.7 知識(shí)鞏固 98
4.7.1 理論知識(shí) 98
4.7.2 真題在線(xiàn) 100
4.7.3 實(shí)訓(xùn)任務(wù) 101
模塊5 樹(shù)和二叉樹(shù) 102
5.1 實(shí)例引入 102
5.2 樹(shù) 103
5.2.1 樹(shù)的邏輯結(jié)構(gòu) 103
5.2.2 樹(shù)在Java類(lèi)庫(kù)中的實(shí)現(xiàn) 105
5.3 二叉樹(shù) 106
5.3.1 二叉樹(shù)的邏輯結(jié)構(gòu) 106
5.3.2 二叉樹(shù)的性質(zhì) 108
5.3.3 二叉樹(shù)的存儲(chǔ)結(jié)構(gòu)及運(yùn)算實(shí)現(xiàn) 110
5.3.4 二叉樹(shù)的遍歷 115
5.4 樹(shù)、森林和二叉樹(shù)的關(guān)系 120
5.4.1 樹(shù)的存儲(chǔ)結(jié)構(gòu) 120
5.4.2 樹(shù)、森林與二叉樹(shù)的相互轉(zhuǎn)換 123
5.4.3 樹(shù)與森林的遍歷 127
5.5 哈夫曼樹(shù)及其應(yīng)用 127
5.5.1 哈夫曼樹(shù)的定義 128
5.5.2 哈夫曼樹(shù)的構(gòu)造 129
5.5.3 哈夫曼編碼 130
5.6 應(yīng)用舉例 133
5.6.1 電文的編碼和譯碼 134
5.6.2 二叉樹(shù)遍歷實(shí)現(xiàn) 138
5.7 小結(jié) 141
5.8 知識(shí)鞏固 141
5.8.1 理論知識(shí) 141
5.8.2 真題在線(xiàn) 144
5.8.3 實(shí)訓(xùn)任務(wù) 145
模塊6 圖 146
6.1 實(shí)例引入 146
6.2 圖的邏輯結(jié)構(gòu) 148
6.2.1 圖的定義 148
6.2.2 圖的基本概念 148
6.3 圖的存儲(chǔ)結(jié)構(gòu)及算法實(shí)現(xiàn) 153
6.3.1 鄰接矩陣 153
6.3.2 鄰接表 155
6.4 圖的遍歷 157
6.4.1 深度優(yōu)先搜索遍歷 158
6.4.2 廣度優(yōu)先搜索遍歷 164
6.5 圖的應(yīng)用 170
6.5.1 最小生成樹(shù) 170
6.5.2 最短路徑 177
6.5.3 拓?fù)渑判?180
6.6 應(yīng)用舉例 182
6.6.1 教學(xué)計(jì)劃安排 183
6.6.2 旅游購(gòu)票方案 187
6.7 小結(jié) 190
6.8 知識(shí)鞏固 191
6.8.1 理論知識(shí) 191
6.8.2 真題在線(xiàn) 194
6.8.3 實(shí)訓(xùn)任務(wù) 196
模塊7 排序 197
7.1 實(shí)例引入 197
7.2 排序基本概念 198
7.3 插入排序 199
7.3.1 直接插入排序 199
7.3.2 希爾排序 201
7.4 交換排序 203
7.4.1 冒泡排序 203
7.4.2 快速排序 205
7.5 選擇排序 208
7.5.1 直接選擇排序 209
7.5.2 堆排序 210
7.6 其他排序 213
7.6.1 歸并排序 214
7.6.2 基數(shù)排序 215
7.7 應(yīng)用舉例 218
7.7.1 學(xué)生成績(jī)查詢(xún)結(jié)果排序 218
7.7.2 設(shè)置高端監(jiān)視哨 219
7.8 小結(jié) 221
7.9 知識(shí)鞏固 222
7.9.1 理論知識(shí) 222
7.9.2 真題在線(xiàn) 226
7.9.3 實(shí)訓(xùn)任務(wù) 228
模塊8 查找 229
8.1 實(shí)例引入 229
8.2 查找基本概念 230
8.3 靜態(tài)查找表 231
8.3.1 順序查找 231
8.3.2 折半查找 233
8.3.3 分塊查找 235
8.4 動(dòng)態(tài)查找表 236
8.4.1 二叉排序樹(shù) 237
8.4.2 平衡二叉樹(shù) 241
8.5 哈希表 243
8.5.1 哈希表的基本概念 243
8.5.2 哈希函數(shù)的構(gòu)造方法 244
8.5.3 處理哈希沖突的方法 247
8.6 應(yīng)用舉例 249
8.6.1 字符串的折半查找 249
8.6.2 學(xué)生成績(jī)分段查找統(tǒng)計(jì)功能 250
8.7 小結(jié) 251
8.8 知識(shí)鞏固 252
8.8.1 理論知識(shí) 252
8.8.2 真題在線(xiàn) 256
8.8.3 實(shí)訓(xùn)任務(wù) 257
知識(shí)鞏固參考答案 258
- Python語(yǔ)言程序設(shè)計(jì)教程 [郭其標(biāo) 房宜汕]
- Python程序設(shè)計(jì) [李國(guó)燕 王新強(qiáng) 劉佳 等編著]
- Python程序設(shè)計(jì)項(xiàng)目化教程(活頁(yè)式) [主編 盧鳳偉]
- Java編程基礎(chǔ)案例式教程 [主編 陳艷華 唐春蘭]
- Python語(yǔ)言同步案例習(xí)題精解 [主編 肖朝暉]
- Unity應(yīng)用開(kāi)發(fā)與實(shí)戰(zhàn)(微課版) [主 編 程永恒]
- PHP程序設(shè)計(jì)項(xiàng)目化教程 [主 編 杜海穎]
- 簡(jiǎn)單易懂的Python入門(mén)教程 [[日]大澤文孝 著]
- Python數(shù)據(jù)分析之道——Thinking in Pandas [[美]漢娜·斯捷潘內(nèi)克(Hannah S]
- 深入淺出OpenHarmony——架構(gòu)、內(nèi)核、驅(qū)動(dòng)及應(yīng)用開(kāi)發(fā)全棧 [李傳釗 著]
- MySQL數(shù)據(jù)庫(kù)項(xiàng)目化教程(第二版) [主編 鄭小蓉]
- python青少年趣味編程 [千鋒教育 編著]
- 程序員5天修煉 [施游 鄒月平 曾哲軍 編著]
- Python程序設(shè)計(jì)應(yīng)用教程 [王敏 李光正]
- Java面向?qū)ο蟪绦蛟O(shè)計(jì)(微課版) [主編 謝先偉 王海洋]
- Java面向?qū)ο蟪绦蛟O(shè)計(jì) [主編 張立敏 鄒海濤]
- 工業(yè)機(jī)器人編程及應(yīng)用 [主編 向艷芳 胡月霞]
- C語(yǔ)言程序設(shè)計(jì)(微課版) [主編 夏啟壽]
- C語(yǔ)言程序設(shè)計(jì)實(shí)踐教程 [夏啟壽]
- 單片機(jī)應(yīng)用技術(shù)項(xiàng)目教程(C語(yǔ)言版)(第三版) [主編 郭志勇]
- Python語(yǔ)言程序設(shè)計(jì) [張雙獅]
- 火球-UML大戰(zhàn)需求分析(第二版) [張傳波 著]
- HTML5+CSS3前端開(kāi)發(fā)項(xiàng)目式教程(微課版) [主編 譚衛(wèi) 徐文義]
- Python 程序設(shè)計(jì)(微課版) [楊智勇 廖丹]
- 數(shù)據(jù)結(jié)構(gòu)——C語(yǔ)言(微課版) [主編 梁海英]
- UI界面設(shè)計(jì)與制作教程 [主 編 黎 婭 任勁松]
- UML系統(tǒng)建模及系統(tǒng)分析與設(shè)計(jì)(第二版) [王欣 張毅 編著]
- Android高級(jí)程序設(shè)計(jì) [主編 周雯 舒松]
- C程序設(shè)計(jì)簡(jiǎn)明教程 [黃能耿 黃致遠(yuǎn) 編著]
- Java程序設(shè)計(jì)簡(jiǎn)明教程 [黃能耿 黃致遠(yuǎn) 編著]
-
>通識(shí)課
>理工類(lèi)基礎(chǔ)課
>程序設(shè)計(jì)
>大數(shù)據(jù)與人工智能
>計(jì)算機(jī)網(wǎng)絡(luò)與通信
>辦公應(yīng)用
>數(shù)據(jù)庫(kù)技術(shù)
>數(shù)字媒體、虛擬現(xiàn)實(shí)
>電工電子
>物聯(lián)網(wǎng)技術(shù)
>單片機(jī)、微機(jī)原理
>數(shù)據(jù)結(jié)構(gòu)、軟件工程
>輔助設(shè)計(jì)
>圖形圖像
>電商物流、信管
>航空工業(yè)
>機(jī)械與自動(dòng)化
>電子信息
>經(jīng)管
>新聞、廣播影視

- 教材類(lèi)more>>
- 教輔培訓(xùn)more>>
- 生活經(jīng)管more>>
- 數(shù)據(jù)結(jié)構(gòu)(Java版)
- Java程序設(shè)計(jì)基礎(chǔ)與實(shí)踐
- 移動(dòng)終端UI界面設(shè)計(jì)項(xiàng)目教程
- 電工電子技術(shù)實(shí)訓(xùn)指導(dǎo)書(shū)
- VMware虛擬化技術(shù)項(xiàng)目式實(shí)訓(xùn)教程
- 移動(dòng)通信技術(shù)
- Android軟件應(yīng)用與實(shí)踐
- 計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)任務(wù)教程
- SQL Server 2008網(wǎng)絡(luò)數(shù)據(jù)庫(kù)管理項(xiàng)目教
- 數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)(第三版)
- 數(shù)據(jù)結(jié)構(gòu)(Java版)
- 網(wǎng)絡(luò)綜合布線(xiàn)
- 計(jì)算機(jī)組裝與維護(hù)
- Java Web項(xiàng)目開(kāi)發(fā)實(shí)訓(xùn)教程
- C#程序設(shè)計(jì)
- 管理信息系統(tǒng)