數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計(jì) 版權(quán)信息
- ISBN:9787121449789
- 條形碼:9787121449789 ; 978-7-121-44978-9
- 裝幀:暫無
- 冊數(shù):暫無
- 重量:暫無
- 所屬分類:>
數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計(jì) 內(nèi)容簡介
數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計(jì)相關(guān)課程是計(jì)算機(jī)專業(yè)教學(xué)中的核心課程,也是各類程序設(shè)計(jì)競賽及互聯(lián)網(wǎng)公司與軟件企業(yè)招聘考查的重要方面。本書按照"數(shù)據(jù)結(jié)構(gòu)―算法設(shè)計(jì)”的路線系統(tǒng)地介紹數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計(jì)的主要內(nèi)容。其中,數(shù)據(jù)結(jié)構(gòu)部分包括線性表、棧、隊(duì)列、字符串、數(shù)組、廣義表、樹和圖,以及兩種常用的數(shù)據(jù)操作――查找和排序;算法設(shè)計(jì)部分包括遞歸與分治法、動(dòng)態(tài)規(guī)劃、貪心法、回溯法和分支限界法;*后以"快遞超市信息管理系統(tǒng)”作為案例介紹面向?qū)嶋H應(yīng)用開展分析、設(shè)計(jì)、編碼與測試的完整過程。 本書融入了思政元素,注重培養(yǎng)學(xué)習(xí)者解決問題的思維能力,擁有豐富且形式多樣的習(xí)題,能夠同時(shí)滿足數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計(jì)的教學(xué)和學(xué)習(xí)需求。 本書可以作為高等院校計(jì)算機(jī)科學(xué)與技術(shù)、軟件工程、信息安全、智能科學(xué)與技術(shù)、物聯(lián)網(wǎng)工程等計(jì)算機(jī)相關(guān)專業(yè)的本科生教材,也可以作為從事計(jì)算機(jī)應(yīng)用開發(fā)的工程技術(shù)人員的參考用書。
數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計(jì) 目錄
1.1 數(shù)據(jù)結(jié)構(gòu)的研究內(nèi)容 1
1.2 數(shù)據(jù)結(jié)構(gòu)的概念 4
1.2.1 基本術(shù)語 4
1.2.2 數(shù)據(jù)結(jié)構(gòu)的三個(gè)要素 5
1.3 算法的定義和評價(jià) 7
1.3.1 算法的定義 7
1.3.2 算法的評價(jià) 7
1.4 算法性能分析 8
1.4.1 算法的時(shí)間復(fù)雜度分析 8
1.4.2 算法的空間復(fù)雜度分析 11
1.5 算法的設(shè)計(jì)與描述 11
1.5.1 算法設(shè)計(jì)的一般步驟 11
1.5.2 算法設(shè)計(jì)的基本策略 12
1.5.3 算法的描述 13
1.6 本章小結(jié) 14
習(xí)題一 15
第2章 線性表 18
2.1 線性表的定義及基本操作 18
2.2 線性表的順序表示和實(shí)現(xiàn) 19
2.2.1 順序表的定義 19
2.2.2 順序表的類模板定義 20
2.2.3 順序表基本操作的實(shí)現(xiàn) 20
2.3 線性表的鏈?zhǔn)奖硎竞蛯?shí)現(xiàn) 25
2.3.1 單鏈表 25
2.3.2 單循環(huán)鏈表 32
2.3.3 雙向循環(huán)鏈表 33
2.3.4 靜態(tài)鏈表 37
2.4 線性表的應(yīng)用 41
2.5 本章小結(jié) 45
習(xí)題二 46
第3章 棧和隊(duì)列 49
3.1 棧 50
3.1.1 棧的定義 50
3.1.2 順序棧 51
3.1.3 鏈棧 54
3.2 棧的應(yīng)用 58
3.3 隊(duì)列 65
3.3.1 隊(duì)列的定義 66
3.3.2 循環(huán)隊(duì)列 66
3.3.3 鏈隊(duì)列 72
3.4 隊(duì)列的應(yīng)用 76
3.5 本章小結(jié) 82
習(xí)題三 82
第4章 字符串、數(shù)組和廣義表 86
4.1 字符串 87
4.1.1 字符串的定義 87
4.1.2 C++字符串操作 88
4.1.3 模式匹配 88
4.2 數(shù)組 93
4.2.1 數(shù)組的定義 93
4.2.2 數(shù)組的順序存儲(chǔ)結(jié)構(gòu) 93
4.3 特殊矩陣的壓縮存儲(chǔ) 95
4.3.1 對稱矩陣和三角矩陣 95
4.3.2 帶狀矩陣 96
4.3.3 稀疏矩陣 97
4.4 廣義表 101
4.5 本章小結(jié) 101
習(xí)題四 102
第5章 樹 105
5.1 樹的定義與術(shù)語 106
5.1.1 樹的定義 106
5.1.2 樹的術(shù)語 107
5.1.3 樹的表示方法 107
5.1.4 樹的基本操作 108
5.2 二叉樹 108
5.2.1 二叉樹的定義 108
5.2.2 二叉樹的性質(zhì) 109
5.2.3 二叉樹的基本操作 110
5.3 二叉樹的存儲(chǔ)結(jié)構(gòu) 111
5.3.1 二叉樹的順序存儲(chǔ)結(jié)構(gòu) 111
5.3.2 二叉樹的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu) 112
5.3.3 二叉樹的二叉鏈表類模板
定義 112
5.4 二叉樹的遍歷 115
5.4.1 先序遍歷 116
5.4.2 中序遍歷 116
5.4.3 后序遍歷 117
5.4.4 層次遍歷 117
5.4.5 基于遍歷的操作 118
5.5 線索二叉樹 121
5.5.1 線索二叉樹的定義 121
5.5.2 中序線索二叉樹類模板定義 122
5.6 二叉樹的應(yīng)用 126
5.6.1 堆 127
5.6.2 哈夫曼樹 133
5.7 樹和森林 136
5.7.1 樹的存儲(chǔ)結(jié)構(gòu) 136
5.7.2 樹、森林和二叉樹的轉(zhuǎn)換 138
5.7.3 樹的遍歷 141
5.7.4 森林的遍歷 141
5.8 本章小結(jié) 142
習(xí)題五 142
第6章 圖 146
6.1 圖的定義與術(shù)語 146
6.1.1 圖的定義 146
6.1.2 圖的術(shù)語 147
6.1.3 圖的基本操作 149
6.2 圖的存儲(chǔ)結(jié)構(gòu) 149
6.2.1 鄰接矩陣 150
6.2.2 鄰接表 156
6.2.3 鄰接多重表 164
6.2.4 十字鏈表 165
6.3 圖的遍歷 166
6.3.1 深度優(yōu)先遍歷 166
6.3.2 廣度優(yōu)先遍歷 168
6.4 圖的應(yīng)用 170
6.4.1 *小生成樹 170
6.4.2 *短路徑 173
6.4.3 活動(dòng)網(wǎng)絡(luò) 177
6.5 本章小結(jié) 184
習(xí)題六 185
第7章 查找 189
7.1 查找的基本概念 189
7.2 線性表的查找 191
7.2.1 順序查找 191
7.2.2 折半查找 193
7.2.3 索引查找 195
7.3 樹表查找 198
7.3.1 二叉排序樹 198
7.3.2 平衡二叉樹 206
7.3.3 B-樹與B+樹 213
7.4 散列查找 218
7.4.1 散列表的概念 218
7.4.2 散列函數(shù)的構(gòu)造方法 219
7.4.3 解決沖突的方法 222
7.4.4 散列查找及其性能分析 224
7.5 本章小結(jié) 227
習(xí)題七 228
第8章 排序 231
8.1 排序的基礎(chǔ)知識 232
8.2 交換排序 233
8.2.1 冒泡排序 233
8.2.2 快速排序 235
8.3 插入排序 237
8.3.1 直接插入排序 237
8.3.2 折半插入排序 239
8.3.3 希爾排序 240
8.4 選擇排序 241
8.4.1 簡單選擇排序 242
8.4.2 堆排序 243
8.5 歸并排序 245
8.5.1 兩路歸并算法 245
8.5.2 兩路歸并排序 247
8.6 基數(shù)排序 248
8.6.1 多關(guān)鍵字排序 248
8.6.2 鏈?zhǔn)交鶖?shù)排序 249
8.7 排序方法的比較 252
8.8 本章小結(jié) 253
習(xí)題八 253
第9章 遞歸與分治法 256
9.1 遞歸程序設(shè)計(jì) 256
9.1.1 遞歸的定義 256
9.1.2 遞歸的適用條件 257
9.1.3 遞歸的程序設(shè)計(jì) 259
9.1.4 遞歸的優(yōu)缺點(diǎn) 264
9.2 分治法 265
9.2.1 分治法的基本思想 265
9.2.2 分治法的適用條件 266
9.2.3 分治法的設(shè)計(jì)步驟 266
9.3 分治法的應(yīng)用實(shí)例 267
9.3.1 選擇問題 267
9.3.2 排序問題 272
9.3.3 大整數(shù)的乘法 273
9.3.4 Strassen矩陣乘法 276
9.3.5 棋盤覆蓋問題 278
9.3.6 循環(huán)賽日程安排 281
9.4 本章小結(jié) 284
習(xí)題九 284
第10章 動(dòng)態(tài)規(guī)劃 286
10.1 動(dòng)態(tài)規(guī)劃概述 286
10.1.1 動(dòng)態(tài)規(guī)劃的基本思想 286
10.1.2 動(dòng)態(tài)規(guī)劃的適用條件 287
10.1.3 動(dòng)態(tài)規(guī)劃的設(shè)計(jì)步驟 289
10.2 動(dòng)態(tài)規(guī)劃的應(yīng)用實(shí)例 291
10.2.1 矩陣連乘問題 291
10.2.2 投資問題 295
10.2.3 0-1背包問題 299
10.2.4 *長公共子序列問題 303
10.3 本章小結(jié) 308
習(xí)題十 308
第11章 貪心法 310
11.1 貪心法概述 310
11.1.1 貪心法的基本思想 310
11.1.2 貪心法的適用條件 311
11.1.3 貪心法和動(dòng)態(tài)規(guī)劃的區(qū)別 312
11.1.4 貪心法的設(shè)計(jì)算法的步驟 312
11.1.5 貪心算法的正確性證明 313
11.2 貪心法的應(yīng)用實(shí)例 313
11.2.1 活動(dòng)安排問題 313
11.2.2 *優(yōu)裝載問題 316
11.2.3 背包問題 318
11.3 本章小結(jié) 321
習(xí)題十一 321
第12章 回溯法 323
12.1 回溯法概述 323
12.1.1 問題的解空間 323
12.1.2 回溯法的基本思想 325
12.1.3 回溯法的設(shè)計(jì)步驟與算法
框架 327
12.1.4 子集樹與排列樹 328
12.1.5 回溯法的適用條件 330
12.2 回溯法的應(yīng)用實(shí)例 331
12.2.1 0-1背包問題 331
12.2.2 裝載問題 335
12.2.3 n皇后問題 339
12.2.4 旅行商問題 342
12.3 本章小結(jié) 346
習(xí)題十二 346
第13章 分支限界法 348
13.1 分支限界法概述 348
13.1.1 分支限界法的基本思想 348
13.1.2 分支限界法的三個(gè)關(guān)鍵
問題 349
13.1.3 分支限界法的設(shè)計(jì)步驟 350
13.1.4 分支限界法的時(shí)間性能 350
13.1.5 分支限界法的適用條件 350
13.2 分支限界法的應(yīng)用實(shí)例 351
13.2.1 0-1背包問題 351
13.2.2 旅行商問題 358
13.2.3 流水作業(yè)調(diào)度 360
13.2.4 單源點(diǎn)*短路徑問題 365
13.3 本章小結(jié) 367
習(xí)題十三 367
第14章 快遞超市信息管理系統(tǒng) 369
14.1 問題描述 369
14.2 需求分析 370
14.3 概要設(shè)計(jì) 370
14.3.1 模塊設(shè)計(jì) 370
14.3.2 界面設(shè)計(jì) 371
14.3.3 類和數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì) 371
14.4 詳細(xì)設(shè)計(jì) 373
14.4.1 類的詳細(xì)設(shè)計(jì) 373
14.4.2 系統(tǒng)功能的詳細(xì)設(shè)計(jì) 376
14.5 編碼 377
14.6 測試 386
14.7 本章小結(jié) 391
習(xí)題十四 391
參考文獻(xiàn) 392
數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計(jì) 作者簡介
王新宇,江蘇大學(xué)計(jì)算機(jī)科學(xué)與通信工程學(xué)院,副教授。著作出版及論文發(fā)表情況:論著:(1)計(jì)算機(jī)視覺概論與操作實(shí)踐,2019年12月,江蘇鳳凰科學(xué)技術(shù)出版社;(2)模式識別基礎(chǔ)理論及其計(jì)算機(jī)視覺應(yīng)用,2020年7月,西安電子科技大學(xué)出版社;主要論文:(1)A Zero-Watermarking Scheme for Three-Dimensional Mesh Models Based on Multi-Features, Multimedia Tools and Applications,2019,78卷第19期,SCI;(2)構(gòu)造頂點(diǎn)分布特征的三維模型數(shù)字水印算法,計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào), 2014,26卷第2期,EI;(3)數(shù)據(jù)結(jié)構(gòu)課程思政教學(xué)設(shè)計(jì)與實(shí)踐,計(jì)算機(jī)教育,2021,第1期。主要教學(xué)經(jīng)歷:C程序設(shè)計(jì),2001年-2008年;C++程序設(shè)計(jì),2006年-2010年;計(jì)算方法;2003年-至今;計(jì)算機(jī)圖形學(xué),2002年-至今;數(shù)據(jù)結(jié)構(gòu),2011年-至今。承擔(dān)的主要教研項(xiàng)目:面向新工科的多維融合、多方協(xié)同的計(jì)算機(jī)專業(yè)人才培養(yǎng)研究與實(shí)踐,江蘇大學(xué)2017年高等教育教改研究課題(2017JGYB015)。承擔(dān)的主要科研項(xiàng)目及獲獎(jiǎng)情況:主要科研項(xiàng)目:(1)基于模型自適應(yīng)修正和協(xié)同決策的說話人魯棒語音情感識別方法研究,國家自然科學(xué)基金(61003183);(2)面向版權(quán)保護(hù)的三維模型魯棒數(shù)字水印算法研究,高等學(xué)校博士學(xué)科點(diǎn)專項(xiàng)科研基金(20113227110021);(3)三維模型魯棒數(shù)字水印算法研究,江蘇省研究生科研創(chuàng)新計(jì)劃項(xiàng)目(CX10B_273Z);科研獲獎(jiǎng):音視頻內(nèi)容分析及其在行為監(jiān)控與展現(xiàn)中的應(yīng)用,江蘇省科學(xué)技術(shù)進(jìn)步三等獎(jiǎng),2018年。
- >
【精裝繪本】畫給孩子的中國神話
- >
月亮虎
- >
二體千字文
- >
人文閱讀與收藏·良友文學(xué)叢書:一天的工作
- >
詩經(jīng)-先民的歌唱
- >
隨園食單
- >
姑媽的寶刀
- >
中國人在烏蘇里邊疆區(qū):歷史與人類學(xué)概述