注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡軟件與程序設計圖解算法:使用C++

圖解算法:使用C++

圖解算法:使用C++

定 價:¥69.00

作 者: 吳燦銘,胡昭民
出版社: 清華大學出版社
叢編項:
標 簽: 暫缺

購買這本書可以去


ISBN: 9787302566441 出版時間: 2020-11-01 包裝:
開本: 16 頁數: 281 字數:  

內容簡介

  本書是一本綜合講述數據結構及其算法的入門書,力求簡潔、清晰、嚴謹且易于學習和掌握。 本書從介紹計算思維與程序設計兩者之間的關系展開,談到如何培養(yǎng)計算思維的4個部分:分解、模式識別、模式概括與抽象、算法。接著介紹經典算法的分類:分治法、遞歸法、動態(tài)規(guī)劃法、迭代法、枚舉法、回溯法及貪心法。學習了這些基礎之后,在接下來的各章中分別介紹排序算法、查找算法、數組與鏈表算法、安全性算法、堆棧與隊列算法、樹結構及其算法和圖結構及其算法,并搭配了C++語言實現的完整范例程序。 本書圖文并茂,敘述簡潔、清晰,范例豐富、可操作性強,適合想學習數據結構和算法的初學者使用,也適合作為高等院校計算機及相關專業(yè)的教材。

作者簡介

  吳燦銘,現任榮欽科技股份有限公司執(zhí)行長,美國Rochester Institute of Technology計算機科學研究所畢業(yè),長期從事信息教育及計算機圖書寫作的工作,計算機圖書著作包括計算器概論、數據結構、辦公室電子數據處理、互聯(lián)網等相關題材,并監(jiān)制過多套游戲以及教學軟件的研發(fā)。

圖書目錄

目   錄

第1章  計算思維與程序設計 1

1.1  程序設計的速成攻略 2

1.1.1  計算思維簡介 3

1.1.2  分解 3

1.1.3  模式識別 4

1.1.4  模式概括與抽象 5

1.1.5  算法 5

1.2  生活中到處都是算法 7

1.2.1  算法的條件 7

1.2.2  時間復雜度O(f(n)) 10

1.3  程序設計邏輯簡介 11

1.3.1  結構化程序設計 11

1.3.2  面向對象程序設計 12

1.3.3  面向對象程序設計的其他概念 15

1.4  C++面向對象的基因 16

1.4.1  C++的面向對象功能 16

1.4.2  類的基本概念 16

1.4.3  訪問權限關鍵詞 18

1.4.4  繼承關系 18

1.4.5  多態(tài) 19

課后習題 20

第2章  經典算法介紹 22

2.1  分治法 22

2.2  遞歸法 23

2.3  動態(tài)規(guī)劃法 26

2.4  迭代法 28

2.5  枚舉法 31

2.6  回溯法 37

2.7  貪心法 43

課后習題 44

第3章  走入數據結構的奇妙世界 45

3.1  認識數據結構 46

3.2  常見的數據結構 48

3.2.1  數組 48

3.2.2  鏈表 51

3.2.3  堆棧 52

3.2.4  隊列 53

3.3  樹結構 54

3.3.1  樹的基本概念 55

3.3.2  二叉樹 56

3.4  圖論簡介 58

3.5  哈希表 60

課后習題 61

第4章  排序算法 62

4.1  認識排序 63

4.2  冒泡排序法 65

4.3  選擇排序法 69

4.4  插入排序法 72

4.5  希爾排序法 74

4.6  快速排序法 77

4.7  合并排序法 81

4.8  基數排序法 84

4.9  堆積樹排序法 87

課后習題 94

第5章  查找算法 95

5.1  常見的查找算法 95

5.2  順序查找法 96

5.3  二分查找法 98

5.4  插值查找法 101

5.5  斐波那契查找法 103

課后習題 107

第6章  數組與鏈表算法 108

6.1  矩陣算法與深度學習 108

6.1.1  矩陣相加 111

6.1.2  矩陣相乘 112

6.1.3  轉置矩陣 115

6.1.4  稀疏矩陣 116

6.2  數組與多項式 119

6.3  單向鏈表算法 121

6.3.1  單向鏈表插入節(jié)點的算法 124

6.3.2  單向鏈表刪除節(jié)點的算法 129

6.3.3  對單向鏈表進行反轉的算法 133

6.3.4  單向鏈表串接的算法 136

6.4  鏈表與多項式 139

課后習題 144

第7章  安全性算法 145

7.1  數據加密 146

7.1.1  對稱密鑰加密系統(tǒng) 147

7.1.2  非對稱密鑰加密系統(tǒng)與RSA算法 147

7.1.3  認證 148

7.1.4  數字簽名 149

7.2  哈希算法 150

7.2.1  除留余數法 150

7.2.2  平方取中法 151

7.2.3  折疊法 152

7.2.4  數字分析法 153

7.3  碰撞與溢出處理 153

7.3.1  線性探測法 153

7.3.2  平方探測法 155

7.3.3  再哈希法 156

7.3.4  鏈表 157

課后習題 162

第8章  堆棧與隊列算法 163

8.1  以數組來實現堆棧 163

8.2  以鏈表來實現堆棧 168

8.3  漢諾塔問題的求解算法 170

8.4  八皇后問題的求解算法 175

8.5  用數組來實現隊列 178

8.6  用鏈表來實現隊列 181

8.7  雙向隊列 183

8.8  優(yōu)先隊列 187

課后習題 188


第9章  樹結構及其算法 189

9.1  用數組來實現二叉樹 190

9.2  用鏈表來實現二叉樹 193

9.3  二叉樹遍歷 195

9.4  二叉查找樹 201

9.5  二叉樹節(jié)點的插入 204

9.6  二叉樹節(jié)點的刪除 206

9.7  二叉運算樹 208

9.8  二叉排序樹 213

9.9  線索二叉樹 215

9.10  擴充二叉樹 220

9.11  哈夫曼樹 222

9.12  平衡樹 223

9.13  博弈樹 225

課后習題 226

第10章  圖結構及其算法 228

10.1  圖的數據表示法 228

10.1.1  鄰接矩陣法 229

10.1.2  鄰接鏈表法 230

10.1.3  鄰接復合鏈表法 232

10.1.4  索引表格法 233

10.2  圖的遍歷 233

10.2.1  深度優(yōu)先遍歷法 234

10.2.2  廣度優(yōu)先遍歷法 237

10.3  生成樹 241

10.3.1  深度優(yōu)先生成樹和廣度優(yōu)先生成樹 241

10.3.2  最小成本生成樹 242

10.3.3  Prim算法 243

10.3.4  Kruskal算法 246

10.4  圖的最短路徑法 250

10.4.1  Dijkstra算法與A*算法 251

10.4.2  Floyd算法 258

課后習題 262

附錄A  課后習題與解答 265


本目錄推薦

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