注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡軟件與程序設計其他編程語言/工具算法精粹:經典計算機科學問題的Java實現

算法精粹:經典計算機科學問題的Java實現

算法精粹:經典計算機科學問題的Java實現

定 價:¥79.00

作 者: [美]大衛(wèi)·科帕克(David Kopec) 著
出版社: 機械工業(yè)出版社
叢編項:
標 簽: 暫缺

購買這本書可以去


ISBN: 9787111716020 出版時間: 2022-12-01 包裝: 平裝-膠訂
開本: 16開 頁數: 字數:  

內容簡介

  本書是一本面向中高級程序員的算法教程,借助Java語言,用經典的算法、編碼技術和原理來求解計算機科學的一些經典問題。全書共10章,講述了常見的搜索算法、常見的圖算法、遺傳算法、k均值聚類算法、簡單的神經網絡、對抗搜索算法等,通過豐富的方案、示例和習題展開具體實踐。本書將計算機科學與應用程序、數據、性能等現實問題深度關聯,定位獨特,示例經典,可以幫助程序員提升用Java解決實際問題的技術、編程和應用能力。

作者簡介

  ThoughtWorks資深咨詢師,從事Android開發(fā)工作4年,對Android系統架構及應用層開發(fā)有著深入的理解。譯有《Kotlin移動應用開發(fā)》。

圖書目錄

前 言
致 謝
第1章 一些小問題 1
1.1 斐波那契數列 1
1.1.1 第一次遞歸嘗試 1
1.1.2 基線條件的運用 2
1.1.3 使用記憶化 4
1.1.4 簡潔的斐波那契方法 5
1.1.5 使用流來生成斐波那
 契數列 6
1.2 簡單的壓縮算法 6
1.3 牢不可破的加密方案 10
1.3.1 按順序獲取數據 10
1.3.2 加密和解密 11
1.4 計算π 13
1.5 漢諾塔問題 14
1.5.1 對塔進行建?!?5
1 5.2 求解漢諾塔問題 15
1.6 實際應用 17
1.7 習題 18
第2章 搜索問題 19
2.1 DNA搜索 19
2.1.1 存儲DNA 19
2.1.2 線性搜索 21
2.1.3 二分搜索 22
2.1.4 通用示例 25
2.2 迷宮求解 26
2.2.1 生成隨機迷宮 28
2.2.2 迷宮的其他方法 30
2.2.3 深度優(yōu)先搜索 31
2.2.4 廣度優(yōu)先搜索 35
2.2.5 A*搜索 38
2.3 傳教士和食人族問題 43
2.3.1 用代碼來表達問題 44
2.3.2 求解 46
2.4 實際應用 48
2.5 習題 49
第3章 約束滿足問題 50
3.1 構建約束滿足問題的解決框架 51
3.2 澳大利亞地圖著色問題 54
3.3 八皇后問題 57
3.4 單詞搜索問題 59
3.5 字謎問題 65
3.6 電路板布局問題 66
3.7 實際應用 67
3.8 習題 67
第4章 圖問題 68
4.1 地圖是圖的一種 68
4.2 搭建圖的框架 70
4.3 查找最短路徑 76
4.4 最小化網絡構建成本 78
4.4.1 權重處理 78
4.4.2 查找最小生成樹 82
4.5 在加權圖中查找最短路徑 87
4.6 實際應用 91
4.7 習題 92
第5章 遺傳算法 93
5.1 生物學背景 93
5.2 通用遺傳算法 94
5.3 簡單測試 101
5.4 回顧字謎問題 103
5.5 優(yōu)化列表壓縮算法 107
5.6 遺傳算法面臨的挑戰(zhàn) 110
5.7 實際應用 110
5.8 習題 111
第6章 k均值聚類 112
6.1 預備知識 112
6.2 k均值聚類算法 115
6.3 按年齡和經度對州長進行
 聚類 121
6.4 按長度對邁克爾·杰克遜的
 專輯進行聚類 125
6.5 k均值聚類算法問題及其
 擴展 127
6.6 實際應用 127
6.7 習題 128
第7章 簡單神經網絡 129
7.1 生物學基礎 129
7.2 人工神經網絡 131
7.2.1 神經元 131
7.2.2 層 132
7.2.3 反向傳播 133
7.2.4 全貌 135
7.3 預備知識 136
7.3.1 點積 136
7.3.2 激活函數 137
7.4 構建神經網絡 138
7.4.1 神經元的實現 138
7.4.2 層的實現 139
7.4.3 神經網絡的實現 141
7.5 分類問題 144
7.5.1 數據的歸一化 145
7.5.2 經典的鳶尾花數據集 146
7.5.3 葡萄酒的分類 150
7.6 加速神經網絡 152
7.7 神經網絡存在的問題及擴展 153
7.8 實際應用 154
7.9 習題 155
第8章 對抗搜索 156
8.1 棋盤游戲的基礎組件 156
8.2 井字棋 158
8.2.1 井字棋的狀態(tài)管理 158
8.2.2 極小化極大算法 161
8.2.3 用井字棋測試極小化
 極大算法 164
8.2.4 開發(fā)井字棋AI 166
8.3 四子棋 168
8.3.1 四子棋游戲程序 168
8.3.2 四子棋AI 174
8.3.3 用alpha-beta剪枝算法優(yōu)化
 極小化極大算法 176
8.4 超越alpha-beta剪枝效果的
 極小化極大算法改進方案 177
8.5 實際應用 178
8.6 習題 179
第9章 其他問題 180
9.1 背包問題 180
9.2 旅行商問題 185
9.2.1 樸素解法 186
9.2.2 進階 190
9.3 電話號碼助記符 191
9.4 實際應用 194
9.5 習題 194
第10章 采訪布賴恩·戈茨 195
附錄A 術語表 206
附錄B 更多資源 210

本目錄推薦

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