程序員必會的40種算法 40 Algorithms Every Programmer Should Know Get to grips with writing algorithms with the help of case studies and their implementation in Python
Imran Ahmad
- 出版商: 機械工業
- 出版日期: 2021-09-01
- 定價: $594
- 售價: 8.5 折 $505
- 語言: 簡體中文
- 頁數: 280
- 裝訂: 平裝
- ISBN: 7111690338
- ISBN-13: 9787111690337
-
相關分類:
Algorithms-data-structures、Machine Learning、推薦系統
- 此書翻譯自: 40 Algorithms Every Programmer Should Know
-
相關翻譯:
每個程式設計師都應該要知道的50個演算法 (繁中版)
立即出貨 (庫存 < 4)
買這商品的人也買了...
-
程式設計師的自我修養-連結、載入、程式庫$580$458 -
Android 高效入門>>深度學習-使用 Android Studio 2 開發 Android 6.0 APP
$650$507 -
Linux Shell 程式設計實力養成:225個實務關鍵技巧徹底詳解, 2/e$490$382 -
Effective Debugging 中文版 | 軟體與系統除錯的 66 個具體作法 (Effective Debugging: 66 Specific Ways to Debug Software and Systems) (書況略舊,不介意在下單)$450$356 -
$199挑戰編程技能 57道程序員功力測試題 (Exercises for Programmers:57 Challenges to Develop Your Coding Skills) -
Effective SQL 中文版 | 寫出良好 SQL 的 61個具體做法 (Effective SQL : 61 Specific Ways to Write Better SQL)$450$356 -
鳥哥的 Linux 基礎學習訓練教材$480$379 -
$201程序基本算法習題解析 -
打下好基礎-程式設計與演算法競賽入門經典|精選程式設計競賽全真試題及習題解析$450$356 -
$403挑戰程序設計競賽2 : 算法和數據結構 -
UML 物件導向系統分析與設計, 4/e$560$199 -
機器學習開發神器!Google Cloud Platform 雲端開發應用超入門$490$417 -
程序設計方法, 2/e$594$564 -
Kaggle 競賽攻頂秘笈 -- 揭開 Grandmaster 的特徵工程心法,掌握制勝的關鍵技術$1,000$850 -
深度強化式學習 (Deep Reinforcement Learning in Action)$1,000$790 -
$714算法設計 (Algorithm Design) -
超圖解 ESP32 深度實作$880$695 -
算法競賽入門經典 — 訓練指南 (升級版)$708$673 -
$663算法訓練營:海量圖解 + 競賽刷題 (進階篇) -
刷題實戰筆記:演算法工程師求職加分的祕笈$720$562 -
理解演算法|Python 初學者的深度歷險 (Dive Into Algorithms: A Pythonic Adventure for the Intrepid Beginner)$400$316 -
Python 幫幫忙!用程式思維解決現實世界問題 (Real-World Python: A Hacker's Guide to Solving Problems with Code)$630$567 -
圖解 IoT|物聯網的開發技術與原理$520$411 -
打好 AI 的基礎:一探機器學習底層數學運作$880$695 -
穿越作業系統迷霧:從零實現作業系統$594$564
中文年末書展|繁簡參展書2書75折 詳見活動內容 »
-
75折
為你寫的 Vue Components:從原子到系統,一步步用設計思維打造面面俱到的元件實戰力 (iThome 鐵人賽系列書)$780$585 -
75折
BDD in Action, 2/e (中文版)$960$720 -
75折
看不見的戰場:社群、AI 與企業資安危機$750$563 -
79折
AI 精準提問 × 高效應用:DeepSeek、ChatGPT、Claude、Gemini、Copilot 一本搞定$390$308 -
7折
超實用!Word.Excel.PowerPoint 辦公室 Office 365 省時高手必備 50招, 4/e (暢銷回饋版)$420$294 -
75折
裂縫碎光:資安數位生存戰$550$412 -
85折
日本當代最強插畫 2025 : 150位當代最強畫師豪華作品集$640$544 -
79折
Google BI 解決方案:Looker Studio × AI 數據驅動行銷實作,完美整合 Google Analytics 4、Google Ads、ChatGPT、Gemini$630$498 -
79折
超有料 Plus!職場第一實用的 AI 工作術 - 用對 AI 工具、自動化 Agent, 讓生產力全面進化!$599$473 -
75折
從零開始學 Visual C# 2022 程式設計, 4/e (暢銷回饋版)$690$518 -
75折
Windows 11 制霸攻略:圖解 AI 與 Copilot 應用,輕鬆搞懂新手必學的 Windows 技巧$640$480 -
75折
精準駕馭 Word!論文寫作絕非難事 (好評回饋版)$480$360 -
Sam Yang 的插畫藝術:用 Procreate / PS 畫出最強男友視角 x 女孩美好日常$699$629 -
79折
AI 加持!Google Sheets 超級工作流$599$473 -
78折
想要 SSR? 快使用 Nuxt 吧!:Nuxt 讓 Vue.js 更好處理 SEO 搜尋引擎最佳化(iThome鐵人賽系列書)$780$608 -
78折
超實用!業務.總管.人資的辦公室 WORD 365 省時高手必備 50招 (第二版)$500$390 -
7折
Node-RED + YOLO + ESP32-CAM:AIoT 智慧物聯網與邊緣 AI 專題實戰$680$476 -
79折
「生成式⇄AI」:52 個零程式互動體驗,打造新世代人工智慧素養$599$473 -
7折
Windows APT Warfare:惡意程式前線戰術指南, 3/e$720$504 -
75折
我輩程式人:回顧從 Ada 到 AI 這條程式路,程式人如何改變世界的歷史與未來展望 (We, Programmers: A Chronicle of Coders from Ada to AI)$850$637 -
75折
不用自己寫!用 GitHub Copilot 搞定 LLM 應用開發$600$450 -
79折
Tensorflow 接班王者:Google JAX 深度學習又快又強大 (好評回饋版)$780$616 -
79折
GPT4 會你也會 - 共融機器人的多模態互動式情感分析 (好評回饋版)$700$553 -
79折
技術士技能檢定 電腦軟體應用丙級術科解題教本|Office 2021$460$363 -
75折
Notion 與 Notion AI 全能實戰手冊:生活、學習與職場的智慧策略 (暢銷回饋版)$560$420
相關主題
商品描述
本書致力於利用算法求解實際問題,分為三部分。
第一部分介紹算法的核心內容,探討什麼是算法、如何設計算法,
同時學習在算法中使用的數據結構,還深入講解排序算法、
查找算法和求解圖問題的算法。
第二部分討論各種機器學習算法,
包括無監督機器學習算法和傳統監督學習算法,詳細討論一些自然語言處理算法,以及推薦引擎。
第三部分討論更高級的算法,重點討論密碼算法和大規模算法,
還探討在算法實現時應該考慮的實際因素。
此外,本書還包含一些案例分析
(如天氣預測、推文聚類和電影推薦引擎),用來說明如何才能最佳地應用這些算法。
作者簡介
Imran Ahmad
伊姆蘭是一名谷歌認證講師,多年來一直在谷歌和學習樹(Learning Tree)任教,
主要教授Python、機器學習、算法、大數據和深度學習。
他在攻讀博士學位期間基於線性規劃方法提出了名為ATSRA的新算法,用於雲計算環境中資源的優化分配。
近4年來,他一直在加拿大聯邦政府的高級分析實驗室參與一個備受關註的機器學習項目。
該項目旨在開發機器學習算法,使移民過程自動化。
他目前正致力於開發最優地使用GPU來訓練複雜的機器學習模型的算法。
目錄大綱
譯者序
前言
關於作者
關於審校者
第一部分 基礎與核心算法
第1章 算法概述2
1.1 什麼是算法2
1.2 描述算法邏輯4
1.2.1 理解偽代碼4
1.2.2 使用代碼片段6
1.2.3 制定執行計劃6
1.3 Python包簡介7
1.3.1 Python包8
1.3.2 通過Jupyter Notebook執行Python9
1.4 算法設計技術10
1.4.1 數據維度11
1.4.2 計算維度12
1.5 性能分析13
1.5.1 空間複雜度分析13
1.5.2 時間複雜度分析14
1.5.3 性能評估14
1.5.4 選擇算法15
1.5.5 大O記號15
1.6 驗證算法19
1.6.1 精確算法、近似算法和隨機算法19
1.6.2 可解釋性20
1.7 小結20
第2章 算法中的數據結構21
2.1 Python中的數據結構21
2.1.1 列表22
2.1.2 元組26
2.1.3 字典27
2.1.4 集合28
2.1.5 數據幀30
2.1.6 矩陣32
2.2 抽像數據類型33
2.2.1 向量33
2.2.2 棧34
2.2.3 隊列36
2.2.4 棧和隊列背後的基本思想37
2.2.5 樹38
2.3 小結40
第3章 排序算法和查找算法41
3.1 排序算法簡介41
3.1.1 在Python中交換變量42
3.1.2 冒泡排序42
3.1.3 插入排序44
3.1.4 歸併排序46
3.1.5 希爾排序48
3.1.6 選擇排序50
3.2 查找算法簡介51
3.2.1 線性查找52
3.2.2 二分查找52
3.2.3 插值查找53
3.3 實際應用54
3.4 小結56
第4章 算法設計57
4.1 算法設計基本概念57
4.1.1 第一點—所設計算法是否能產生預期的結果58
4.1.2 第二點—所設計算法是否是獲取結果的方法58
4.1.3 第三點—所設計算法在更大的數據集上表現如何61
4.2 理解算法策略61
4.2.1 分治策略62
4.2.2 動態規劃策略64
4.2.3 貪心算法64
4.3 實際應用—求解TSP65
4.3.1 使用蠻力策略66
4.3.2 使用貪心算法68
4.4 PageRank算法70
4.4.1 問題定義70
4.4.2 實現PageRank算法70
4.5 瞭解線性規劃73
4.6 實例—用線性規劃實現產量規劃73
4.7 小結76
第5章 圖算法77
5.1 圖的表示77
5.1.1 圖的類型79
5.1.2 特殊類型的邊81
5.1.3 自我中心網絡82
5.1.4 社交網絡分析82
5.2 網絡分析理論簡介83
5.2.1 理解最短路徑83
5.2.2 創建鄰域84
5.2.3 理解中心性度量85
5.2.4 用Python計算中心性指標87
5.3 理解圖的遍歷88
5.3.1 廣度優先搜索89
5.3.2 深度優先搜索92
5.4 實例—欺詐分析93
5.4.1 進行簡單的欺詐分析96
5.4.2 瞭望塔欺詐分析法97
5.5 小結99
第二部分 機器學習算法
第6章 無監督機器學習算法102
6.1 無監督學習簡介102
6.1.1 數據挖掘生命週期中的無監督學習103
6.1.2 無監督學習的當前研究趨勢105
6.1.3 實例106
6.2 理解聚類算法107
6.2.1 量化相似性107
6.2.2 分層聚類113
6.2.3 評估聚類效果115
6.2.4 聚類算法的應用115
6.3 降維116
6.3.1 主成分分析116
6.3.2 主成分分析的局限性118
6.4 關聯規則挖掘119
6.4.1 實例119
6.4.2 市場購物籃分析119
6.4.3 關聯規則120
6.4.4 排序規則122
6.4.5 關聯分析算法123
6.5 實例—聚類相似推文127
6.5.1 主題建模128
6.5.2 聚類128
6.6 異常檢測算法129
6.6.1 基於聚類的異常檢測129
6.6.2 基於密度的異常檢測129
6.6.3 基於支持向量機的異常檢測129
6.7 小結130
第7章 傳統監督學習算法131
7.1 理解監督機器學習131
7.1.1 描述監督機器學習132
7.1.2 理解使能條件134
7.1.3 區分分類器和回歸器134
7.2 理解分類算法135
7.2.1 分類器挑戰性問題135
7.2.2 評估分類器139
7.2.3 分類器的各個階段142
7.2.4 決策樹分類算法143
7.2.5 理解集成方法146
7.2.6 邏輯回歸149
7.2.7 支持向量機算法151
7.2.8 理解樸素貝葉斯算法153
7.2.9 各種分類算法的勝者156
7.3 理解回歸算法156
7.3.1 回歸器挑戰性問題156
7.3.2 線性回歸158
7.3.3 回歸樹算法162
7.3.4 梯度提升回歸算法163
7.3.5 各種回歸算法的勝者163
7.4 實例—預測天氣164
7.5 小結166
第8章 神經網絡算法167
8.1 理解人工神經網絡168
8.2 人工神經網絡的演化169
8.3 訓練神經網絡171
8.3.1 解析神經網絡結構171
8.3.2 定義梯度下降172
8.3.3 激活函數173
8.4 工具和框架178
8.4.1 Keras178
8.4.2 理解TensorFlow181
8.4.3 理解神經網絡的類型183
8.5 遷移學習185
8.6 實例—用深度學習實現欺詐檢測186
8.7 小結189
第9章 自然語言處理算法190
9.1 自然語言處理簡介190
9.1.1 理解自然語言處理術語191
9.1.2 自然語言工具包192
9.2 基於詞袋的自然語言處理193
9.3 詞嵌入簡介195
9.3.1 詞的鄰域195
9.3.2 詞嵌入的性質195
9.4 用循環神經網絡實現自然語言處理196
9.5 用自然語言處理實現情感分析197
9.6 實例—電影評論情感分析198
9.7 小結200
第10章 推薦引擎201
10.1 推薦系統簡介201
10.2 推薦引擎的類型202
10.2.1 基於內容的推薦引擎202
10.2.2 協同過濾推薦引擎204
10.2.3 混合推薦引擎205
10.3 理解推薦系統的局限性207
10.3.1 冷啟動問題207
10.3.2 元數據需求207
10.3.3 數據稀疏性問題207
10.3.4 由社會影響產生的偏差207
10.3.5 有限的數據207
10.4 實際應用領域208
10.5 實例—創建推薦引擎208
10.6 小結210
第三部分 高 級 主 題
第11章 數據算法212
11.1 數據算法簡介212
11.2 數據存儲算法簡介213
11.3 流數據算法簡介216
11.4 數據壓縮算法簡介216
11.5 實例—推文實時情感分析218
11.6 小結221
第12章 密碼算法222
12.1 密碼算法簡介222
12.1.1 理解最薄弱環節的重要性223
12.1.2 基本術語223
12.1.3 理解安全性需求224
12.1.4 理解密碼基本設計225
12.2 理解加密技術類型228
12.2.1 加密哈希函數228
12.2.2 對稱加密231
12.2.3 非對稱加密233
12.3 實例—機器學習模型部署時的安全問題236
12.3.1 MITM攻擊236
12.3.2 避免偽裝238
12.3.3 數據加密和模型加密238
12.4 小結240
第13章 大規模算法241
13.1 大規模算法簡介241
13.1.1 定義精心設計的大規模算法241
13.1.2 術語242
13.2 並行算法設計242
13.2.1 阿姆達爾定律243
13.2.2 任務粒度245
13.2.3 負載均衡246
13.2.4 局部化問題246
13.2.5 在Python中啟用並發處理246
13.3 制定多資源處理策略246
13.3.1 CUDA簡介247
13.3.2 集群計算250
13.3.3 混合策略251
13.4 小結252
第14章 實踐中要考慮的要素253
14.1 實踐要素簡介253
14.2 算法的可解釋性254
14.3 理解倫理和算法258
14.3.1 使用學習算法易出現的問題258
14.3.2 理解倫理因素259
14.4 減少模型偏差260
14.5 處理NP難問題261
14.5.1 簡化問題261
14.5.2 改造類似問題的已知求解方案261
14.5.3 使用概率方法262
14.6 何時使用算法262
14.7 小結264
