數(shù)據(jù)結(jié)構(gòu)與算法 Rust語(yǔ)言描述
定 價(jià):109.8 元
- 作者:謝波
- 出版時(shí)間:2023/7/1
- ISBN:9787115611680
- 出 版 社:人民郵電出版社
- 中圖法分類:TP311.12
- 頁(yè)碼:338
- 紙張:
- 版次:01
- 開(kāi)本:16開(kāi)
這是一本基于 Rust 語(yǔ)言講解數(shù)據(jù)結(jié)構(gòu)及其實(shí)現(xiàn)方法的書(shū)。全書(shū)先介紹 Rust 語(yǔ)言的基礎(chǔ)知識(shí)以及計(jì)算機(jī)科學(xué)和算法分析的概念,然后介紹簡(jiǎn)單數(shù)據(jù)結(jié)構(gòu)和算法的設(shè)計(jì)與實(shí)現(xiàn),接著介紹較復(fù)雜的樹(shù)和圖數(shù)據(jù)結(jié)構(gòu),最后將這些知識(shí)應(yīng)用于實(shí)戰(zhàn)項(xiàng)目以解決實(shí)際問(wèn)題。
本書(shū)適合程序設(shè)計(jì)愛(ài)好者、專業(yè)程序員以及對(duì) Rust 語(yǔ)言感興趣的讀者閱讀。
1. 基于Rust語(yǔ)言編寫的數(shù)據(jù)結(jié)構(gòu)與算法圖書(shū),深入淺出介紹Rust語(yǔ)言的基礎(chǔ)知識(shí),帶領(lǐng)讀者逐步理解并實(shí)現(xiàn)簡(jiǎn)單到復(fù)雜的數(shù)據(jù)結(jié)構(gòu)及其算法。
2. Rust社區(qū)創(chuàng)辦人張漢東、唐剛聯(lián)袂推薦,不僅涵蓋數(shù)據(jù)結(jié)構(gòu)及其實(shí)現(xiàn)方法,還引入了計(jì)算機(jī)科學(xué)和算法分析的概念,為讀者提供了一個(gè)更加全面的學(xué)習(xí)體驗(yàn)。
3. 異步社區(qū)提供配套資源(源代碼),輔以實(shí)例闡釋重要知識(shí)點(diǎn),是一份非常優(yōu)質(zhì)的計(jì)算機(jī)科學(xué)入門指南。
4. 以實(shí)用性為導(dǎo)向,適合技術(shù)人員快速上手并熟練掌握數(shù)據(jù)結(jié)構(gòu)和算法的核心知識(shí)。通過(guò)本書(shū)的學(xué)習(xí),讀者可以更好地了解Rust語(yǔ)言在不同場(chǎng)景下的應(yīng)用,提高自己的編程能力。
謝波(Shieber) 畢業(yè)于電子科技大學(xué),Rust 語(yǔ)言愛(ài)好者,擅長(zhǎng)用 Rust開(kāi)發(fā)各種實(shí)用工具和系統(tǒng),長(zhǎng)期致力于 Rust 語(yǔ)言的推廣。現(xiàn)就職于某互聯(lián)網(wǎng)公司,從事結(jié)算及大數(shù)據(jù)系統(tǒng)的相關(guān)研發(fā)工作。愛(ài)好編程、閱讀、醫(yī)學(xué)、語(yǔ)言和美食。
第 1 章 Rust 基礎(chǔ) 1
11 安裝 Rust 及其工具鏈 1
12 Rust 基礎(chǔ)知識(shí) 2
121 Rust 語(yǔ)言歷史 2
122 關(guān)鍵字、注釋、命名風(fēng)格 4
123 常量、變量、數(shù)據(jù)類型 6
124 語(yǔ)句、表達(dá)式、運(yùn)算符、流程控制 10
125 函數(shù)、程序結(jié)構(gòu) 13
126 所有權(quán)、作用域規(guī)則、生命周期 15
127 泛型、trait 20
128 枚舉及模式匹配 22
129 函數(shù)式編程 24
1210 智能指針 27
1211 異常處理 34
1212 宏系統(tǒng) 36
1213 代碼組織及包依賴關(guān)系 37
13 項(xiàng)目:Rust 密碼生成器 39
14 小結(jié) 46
第 2 章 計(jì)算機(jī)科學(xué) 47
21 什么是計(jì)算機(jī)科學(xué) 47
22 什么是編程 49
23 為什么要學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu) 49
24 為什么要學(xué)習(xí)算法 50
25 小結(jié) 51
第 3 章 算法分析 52
31 什么是算法分析 52
32 大 O 分析法 55
33 亂序字符串檢查 58
331 窮舉法 58
332 檢查法 58
333 排序和比較法 60
334 計(jì)數(shù)和比較法 60
34 Rust 數(shù)據(jù)結(jié)構(gòu)的性能 62
341 標(biāo)量類型和復(fù)合類型 62
342 集合類型 63
35 小結(jié) 64
第 4 章 基礎(chǔ)數(shù)據(jù)結(jié)構(gòu) 65
41 線性數(shù)據(jù)結(jié)構(gòu) 65
42 棧 66
421 棧的抽象數(shù)據(jù)類型 67
422 Rust 實(shí)現(xiàn)棧 68
423 括號(hào)匹配 71
424 進(jìn)制轉(zhuǎn)換 75
425 前綴、中綴和后綴表達(dá)式 78
426 將中綴表達(dá)式轉(zhuǎn)換為前
綴和后綴表達(dá)式 80
43 隊(duì)列 85
431 隊(duì)列的抽象數(shù)據(jù)類型 86
432 Rust 實(shí)現(xiàn)隊(duì)列 87
433 燙手山芋游戲 90
44 雙端隊(duì)列 92
441 雙端隊(duì)列的抽象數(shù)據(jù)類型 92
442 Rust 實(shí)現(xiàn)雙端隊(duì)列 93
443 回文檢測(cè) 97
45 鏈表 98
451 鏈表的抽象數(shù)據(jù)類型 99
452 Rust 實(shí)現(xiàn)鏈表 100
453 鏈表?xiàng)? 104
46 Vec 107
461 Vec 的抽象數(shù)據(jù)類型 107
462 Rust 實(shí)現(xiàn) Vec 108
47 小結(jié) 114
第 5 章 遞歸 115
51 什么是遞歸 115
511 遞歸三定律 117
512 到任意進(jìn)制的轉(zhuǎn)換 118
513 漢諾塔 120
52 尾遞歸 121
53 動(dòng)態(tài)規(guī)劃 123
531 什么是動(dòng)態(tài)規(guī)劃 126
532 動(dòng)態(tài)規(guī)劃與遞歸 129
54 小結(jié) 129
第 6 章 查找 131
61 什么是查找 131
62 順序查找 132
621 Rust 實(shí)現(xiàn)順序查找 132
622 順序查找的復(fù)雜度 133
63 二分查找 135
631 Rust 實(shí)現(xiàn)二分查找 135
632 二分查找的復(fù)雜度 138
633 內(nèi)插查找 138
634 指數(shù)查找 140
64 哈希查找 141
641 哈希函數(shù) 142
642 解決哈希沖突 144
643 Rust 實(shí)現(xiàn) HashMap 146
644 HashMap 的復(fù)雜度 153
65 小結(jié) 153
第 7 章 排序 154
71 什么是排序 154
72 冒泡排序 155
73 快速排序 160
74 插入排序 164
75 希爾排序 166
76 歸并排序 167
77 選擇排序 170
78 堆排序 171
79 桶排序 174
710 計(jì)數(shù)排序 177
711 基數(shù)排序 179
712 蒂姆排序 181
713 小結(jié) 193
第 8 章 樹(shù) 195
81 什么是樹(shù) 195
811 樹(shù)的定義 198
812 樹(shù)的表示 199
813 分析樹(shù) 203
814 樹(shù)的遍歷 204
82 二叉堆 211
821 二叉堆的抽象數(shù)據(jù)類型 212
822 Rust 實(shí)現(xiàn)二叉堆 212
823 二叉堆分析 219
83 二叉查找樹(shù) 219
831 二叉查找樹(shù)的抽象數(shù)
據(jù)類型 219
832 Rust 實(shí)現(xiàn)二叉查找樹(shù) 220
833 二叉查找樹(shù)分析 231
84 平衡二叉樹(shù) 232
841 AVL 平衡二叉樹(shù) 232
842 Rust 實(shí)現(xiàn)平衡二叉樹(shù) 34
843 平衡二叉樹(shù)分析 245
85 小結(jié) 245
第 9 章 圖 246
91 什么是圖 246
92 圖的存儲(chǔ)形式 247
921 鄰接矩陣 248
922 鄰接表 248
93 圖的抽象數(shù)據(jù)類型 249
94 圖的實(shí)現(xiàn) 249
95 廣度優(yōu)先搜索 258
951 實(shí)現(xiàn)廣度優(yōu)先搜索 258
952 廣度優(yōu)先搜索分析 266
953 騎士之旅問(wèn)題 267
96 深度優(yōu)先搜索 273
961 實(shí)現(xiàn)深度優(yōu)先搜索 274
962 深度優(yōu)先搜索分析 277
963 拓?fù)渑判? 277
97 強(qiáng)連通分量 284
971 BFS 強(qiáng)連通分量算法 286
972 DFS 強(qiáng)連通分量算法 290
98 最短路徑問(wèn)題 292
981 Dijkstra 算法 293
982 實(shí)現(xiàn) Dijkstra 算法 293
983 Dijkstra 算法分析 296
99 小結(jié) 296
第 10 章 實(shí)戰(zhàn) 297
101 編輯距離 297
1011 漢明距離 297
1012 萊文斯坦距離 299
102 字典樹(shù) 304
103 過(guò)濾器 306
1031 布隆過(guò)濾器 307
1032 布谷鳥(niǎo)過(guò)濾器 310
104 LRU 緩存淘汰算法 315
105 一致性哈希算法 320
106 Base58 編碼 324
107 區(qū)塊鏈 330
1071 區(qū)塊鏈及比特幣原理 330
1072 基礎(chǔ)區(qū)塊鏈 331
108 小結(jié) 336
參考文獻(xiàn) 337