每個程式設計師都應該要知道的50個演算法 40 Algorithms Every Programmer Should Know
Imran Ahmad 著 何敏煌 譯
- 出版商: 博碩
- 出版日期: 2022-07-15
- 定價: $690
- 售價: 7.5 折 $518
- 語言: 繁體中文
- 頁數: 384
- ISBN: 6263331771
- ISBN-13: 9786263331778
-
相關分類:
Algorithms-data-structures
- 此書翻譯自: 40 Algorithms Every Programmer Should Know
-
相關翻譯:
程序員必會的40種算法 (簡中版)
-
其他版本:
每個程式設計師都應該知道的 60個演算法 (AI 強化版)
買這商品的人也買了...
-
單元測試的藝術, 2/e (The Art of Unit Testing: with examples in C#, 2/e)$650$507 -
NumPy 高速運算徹底解說 - 六行寫一隻程式?你真懂深度學習?手工算給你看!$750$638 -
機器學習的數學:用數學引領你走進 AI 的神秘世界$580$452 -
提升程式設計師的面試力|189道面試題目與解答, 6/e (修訂版) (Cracking the Coding Interview : 189 Programming Questions and Solutions, 6/e)$980$774 -
白話演算法!培養程式設計的邏輯思考 (Grokking Algorithms: An illustrated guide for programmers and other curious people)$520$468 -
Python 資料分析必備套件!Pandas 資料清理、重塑、過濾、視覺化 (Pandas 1.x Cookbook, 2/e)$780$616 -
Java 學習手冊, 5/e (Learning Java: An Introduction to Real-World Programming with Java, 5/e)$780$616 -
演算法戰鬥營:爆量題庫新手燒腦篇$880$695 -
演算法洞見:遞推與遞迴$600$468 -
從 Docker 動手邁入全新 DevOps 時代:最完整 Kubernetes 全書$1,280$1,011 -
C 最強入門邁向頂尖高手之路王者歸來 (單色印刷)$620$490 -
演算法學習手冊|寫出更有效率的程式 (Learning Algorithms: A Programmer's Guide to Writing Better Code)$580$458 -
圖解機器學習與資料科學的數學基礎|使用 Python$650$514 -
機器學習聖經:最完整的統計學習方法$880$695 -
Python 操作 Excel - 最強入門邁向辦公室自動化之路 - 王者歸來$680$537 -
流程架構|整合串流與事件驅動的未來 (Flow Architectures: The Future of Streaming and Event-Driven Integration)$580$458 -
ASP.NET Core 工程師不可不知的 10大安全性漏洞與防駭方法$690$538 -
AI 開發的機器學習系統設計模式$620$490 -
Python:股票 × ETF 量化交易回測 102個活用技巧$600$468 -
從機器學習到人工智慧|寫給 Android/iOS 程式師的 ML/AI 開發指南 (AI and Machine Learning for On-Device Development: A Programmer's Guide)$620$490 -
Clean Architecture 實作篇:在整潔的架構上弄髒你的手 (Get Your Hands Dirty on Clean Architecture)$500$390 -
Test-Driven Development 學習手冊$580$458 -
Python 資料科學實戰教本 - 爬蟲、清理、資料庫、視覺化、探索式分析、機器學習建模,數據工程一次搞定!$680$537 -
只要一行指令!FFmpeg 應用開發完全攻略$880$695 -
會動的演算法:61 個演算法動畫+全圖解逐步拆解,人工智慧、資料分析必備$620$490
商品描述
本書特色
☛學習現存於Python程式庫中的資料結構及演算法
☛了解如何實作圖形演算法,並藉由網路分析進行詐欺偵測
☛學會使用機器學習演算法,即時進行相似推文的分群並處理Twitter資料
☛學會使用監督式學習演算法預測天氣
☛學會使用Siamese Neural Networks執行單張影像的辨識
☛建立一個推薦引擎,向訂閱者建議相關的電影
☛部署機器學習模型時,使用對稱及非對稱加密,實作萬無一失的安全機制
不管是在計算的科學與實務上,演算法總是扮演重要的角色。除了傳統的計算之外,對任何一個開發者或程式設計師而言,使用演算法解決實務問題的能力是非常重要且必須具備的技巧。本書不只會幫助你發展選用的技術以及使用演算法以解決實務問題,同時也能理解這些演算法是如何運作的。
本書從演算法的介紹開始,並說明各種演算法的設計技巧,再佐以實際範例來協助探討如何實作不同類型的演算法,諸如搜尋與排序。當你要進階更複雜的演算法集合時,你將會學到線性規劃、頁面排名以及各種圖(graph),甚至跨入AI領域學習如何使用機器學習演算法,並瞭解它們背後的數學與邏輯。隨後將更進一步探討一些案例研究,像是天氣預測、推文分群以及電影推薦引擎等等,瞭解如何應用這些演算法以達到最佳化。最終,你將精通平行處理技術的運用,讓你有能力可以使用這些演算法在計算密集的任務上。
讀完本書,你將精通各式各樣的演算法來解決職場上的電腦運算問題。
本書範例檔:
https://github.com/packtpublishing/40-algorithms-every-programmer-should-know
作者簡介
Imran Ahmad
Imran Ahmad是Google的合格講師,他在Google和Learning Tree有許多年的教學經驗。Imran教授的主題包括Python、機器學習、演算法、大數據以及深度學習。在他的博士學位中,他提出了一個基於線性規劃的演算法,稱之為ATSRA,此演算法應用在雲端環境的最佳化資源指派上。過去四年裡,Imran在加拿大聯邦政府先進分析實驗室進行高規格機器學習專案工作,此專案主要是為了開發機器學習演算法,讓移民程序可以自動化。Imran目前的工作是在開發使用GPU最佳化的演算法,以訓練複雜的機器學習模型。
目錄大綱
Section 1:基礎與核心演算法
Chapter 1_ 演算法概述
什麼是演算法?
精準描述演算法的邏輯
Python套件介紹
演算法的設計技巧
效能分析
演算法的驗證
本章摘要
Chapter 2_演算法裡的資料結構
Python的資料結構
探索抽象資料型態
本章摘要
Chapter 3_排序與搜尋演算法
排序演算法的介紹
搜尋演算法的介紹
實際應用
本章摘要
Chapter 4_設計演算法
設計演算法的基本概念介紹
瞭解演算法策略
實際的應用:解決TSP
介紹PageRank演算法
瞭解線性規劃(Linear programming)
實際的應用—使用線性規劃進行產能規劃
本章摘要
Chapter 5_圖演算法
圖的表示
網路分析理論介紹
瞭解圖的遍歷
案例研究:詐欺分析
本章摘要
Section 2:機器學習演算法
Chapter 6_非監督式機器學習演算法
認識非監督式學習
瞭解分群演算法
降維
關聯規則探勘
實際應用:分群相似的推文
Anomaly-detection異常偵測演算法
本章摘要
Chapter 7_傳統監督式學習演算法
瞭解監督式機器學習
瞭解分類演算法
瞭解迴歸演算法
實用範例:如何預測天氣
本章摘要
Chapter 8_類神經網路演算法
瞭解ANN
ANN的演進
訓練類神經網路
工具和框架
遷移學習(Transfer learning)
案例研究:使用深度學習進行詐欺偵測
本章摘要
Chapter 9_自然語言處理演算法
介紹NLP
BoW-based NLP
字詞嵌入簡介
在NLP中使用RNN
使用NLP進行情緒分析
案例研究:電影評論的情感分析
本章摘要
Chapter 10_推薦引擎
推薦系統介紹
推薦引擎的類型
瞭解推薦系統的限制
實際應用領域
實際的例子:建立一個推薦引擎
本章摘要
Section 3:進階主題
Chapter 11_資料演算法
資料演算法簡介
資料儲存演算法介紹
串流資料演算法介紹
介紹資料壓縮演算法
一個實際的例子:Twitter即時情感分析
本章摘要
Chapter 12_密碼學
密碼學簡介
瞭解加密技術的類型
範例:在部署機器學習模型時的安全考量
本章摘要
Chapter 13_大規模演算法
大規模演算法簡介
平行演算法的設計
多資源程序的策略
本章摘要
Chapter 14_實務上的考量
實務上的考量簡介
演算法的可解釋性
瞭解倫理和演算法之間的關係
在模型中減少偏差
解決NP-hard問題
使用演算法的時機
本章摘要

















