數據結構與算法 (Rust 語言描述)

謝波

  • 出版商: 人民郵電
  • 出版日期: 2023-07-01
  • 售價: $659
  • 貴賓價: 9.5$626
  • 語言: 簡體中文
  • 頁數: 338
  • 裝訂: 平裝
  • ISBN: 7115611688
  • ISBN-13: 9787115611680
  • 立即出貨 (庫存 < 4)

買這商品的人也買了...

商品描述

這是一本基於Rust 語言講解數據結構及其實現方法的書。
全書先介紹Rust 語言的基礎知識以及計算機科學和算法分析的概念,然後介紹簡單數據結構和算法的設計與實現,
接著介紹較複雜的樹和圖數據結構,最後將這些知識應用於實戰項目以解決實際問題。
本書適合程序設計愛好者、專業程序員以及對Rust 語言感興趣的讀者閱讀。

目錄大綱

第1 章Rust 基礎1
11 安裝Rust 及其工具鏈1
12 Rust 基礎知識2
121 Rust 語言2
122 關鍵字、註釋、命名風格4
123 常量、變量、數據類型6
124 語句、表達式、運算符、流程控制10
125 函數、程序結構13
126 所有權、作用域規則、生命週期15
127 泛型、trait 20
128 枚舉及模式匹配22
129 函數式編程24
1210 智能指針27
1211 異常處理34
1212 宏系統36
1213 代碼組織及依賴關係37
13 項目:Rust 密碼生成器39
14 小結46
第2 章計算機科學47
21 什麼是計算機科學47
22 什麼是編程49
23 為什麼要學數據結構49
24 為什麼要學算法50
25 小結51
第3 章算法分析52
31 什麼是算法分析52
32 大O 分析法55
33 亂序字符串檢查58
331 窮舉法58
332 檢查法58
333 排序和比較法60
334 計數和比較法60
34 Rust 數據結構的性能62
341 標量類型和復合類型62
342 集合類型63
35 小結64
第4 章基礎數據結構65
41 線性數據結構65
42 棧66
421 棧的抽像數據類型67
422 Rust 實現棧68
423 括號匹配71
424 進制轉換75
425 前綴、中綴和後綴表達式78
426 將中綴表達式轉換為前
綴和後綴表達式80
43 隊列85
431 隊列的抽像數據類型86
432 Rust 實現隊列87
433 燙手山芋遊戲90
44 雙端隊列92
441 雙端隊列的抽像數據類型92
442 Rust 實現雙端隊列93
443 回文檢測97
45 鍊錶98
451 鍊錶的抽像數據類型99
452 Rust 實現鍊錶100
453 鍊錶棧104
46 Vec 107
461 Vec 的抽像數據類型107
462 Rust 實現Vec 108
47 小結114
第5 章遞歸115
51 什麼是遞歸115
511 遞歸三定律117
512 到任意進制的轉換118
513 漢諾塔120
52 尾遞歸121
53 動態規劃123
531 什麼是動態規劃126
532 動態規劃與遞歸129
54 小結129
第6 章查找131
61 什麼是查找131
62 順序查找132
621 Rust 實現順序查找132
622 順序查找的複雜度133
63 二分查找135
631 Rust 實現二分查找135
632 二分查找的複雜度138
633 內查找138
634 指數查找140
64 哈希查找141
641 哈希函數142
642 解決哈希衝突144
643 Rust 實現HashMap 146
644 HashMap 的複雜度153
65 小結153
第7 章排序154
71 什麼是排序154
72 冒泡排序155
73 快速排序160
74 入排序164
75 希爾排序166
76 歸併排序167
77 選擇排序170
78 堆排序171
79 桶排序174
710 計數排序177
711 基數排序179
712 蒂姆排序181
713 小結193
第8 章樹195
81 什麼是樹195
811 樹的定義198
812 樹的表示199
813 分析樹203
814 樹的遍歷204
82 二堆211
821 二堆的抽像數據類型212
822 Rust 實現二堆212
823 二堆分析219
83 二查找樹219
831 二查找樹的抽像數
據類型219
832 Rust 實現二查找樹220
833 二查找樹分析231
84 平衡二樹232
841 AVL 平衡二樹232
842 Rust 實現平衡二樹34
843 平衡二樹分析245
85 小結245
第9 章圖246
91 什麼是圖246
92 圖的存儲形式247
921 鄰接矩陣248
922 鄰接表248
93 圖的抽像數據類型249
94 圖的實現249
95 廣度先搜索258
951 實現廣度先搜索258
952 廣度先搜索分析266
953 騎士之旅問題267
96 深度先搜索273
961 實現深度先搜索274
962 深度先搜索分析277
963 拓撲排序277
97 強連通分量284
971 BFS 強連通分量算法286
972 DFS 強連通分量算法290
98 *短路徑問題292
981 Dijkstra 算法293
982 實現Dijkstra 算法293
983 Dijkstra 算法分析296
99 小結296
第10 章實戰297
101 編輯距離297
1011 漢明距離297
1012 萊文斯坦距離299
102 字典樹304
103 過濾器306
1031 布隆過濾器307
1032 布穀鳥過濾器310
104 LRU 緩存淘汰算法315
105 一性哈希算法320
106 Base58 編碼324
107 區塊鏈330
1071 區塊鍊及比幣原理330
1072 基礎區塊鏈331
108 小結336
參考文獻337