【電子書】演算法:圖解邏輯思維 + Python程式實作.王者歸來
內容簡介
	★★★★★【650張圖例】+【圖解演算法原理和邏輯思維】★★★★★
	★★★★★【20個主題】+【149個Python程式實例】★★★★★
	★★★★★【邏輯思維】+【Python實作】=【演算法的精髓】★★★★★
	
	本書的第一版曾經獲得博客來與天瓏暢銷排行榜第1名,撰寫這本書時採用下列原則。
	1:彩色圖片引導讀者認識演算法的邏輯思維。
	2:Python程式實作演算法原理。
	3:章節習題引導讀者複習與自我練習。
	
	當讀者遵循這步驟學習時,相信一定可以完整學習演算法的相關知識,本書的主體內容如下:
	☆ 20個主題
	★ 認識時間複雜度和空間複雜度
	☆ 7大資料結構完整圖說與程式實例
	★ 7大排序法完整圖說與程式實例
	☆ 遞迴與回溯演算法
	★ 電腦領域的經典演算法八皇后和河內塔
	☆ 碎形與VLSI設計應用
	★ 圖形理論
	☆ 深度、寬度優先搜尋
	★ Bellman-Ford演算法
	☆ Dijkstra’s演算法
	★ 貪婪演算法
	☆ 動態規劃演算法
	★ 資訊安全演算法
	☆ 摩斯與凱薩密碼
	★ 金鑰系統觀念,解說設計金鑰方法或是應用目前市面上成熟的金鑰
	☆ 訊息鑑別碼(Message authentication code)
	★ 數位簽章(Digital Signature)
	☆ 數位憑證(Digital certificate)
	★ 基礎機器學習KNN演算法
	☆ K-means演算法
	★ 網頁排名演算法
	☆ 常見的演算法考題與Leetcode考題
目錄
	第一章 演算法基本觀念
	1-1 電腦的演算法 … 1-3
	1-2 遞迴函數設計 … 1-4
	1-3 好的演算法與不好的演算法 … 1-11
	1-4 程式執行的時間量測方法– 時間複雜度 … 1-15
	1-5 記憶體的使用 – 空間複雜度 … 1-21
	1-6 資料結構 … 1-25
	1-7 習題 … 1-26
	
	第二章 陣列(Array)
	2-1 基本觀念 … 2-2
	2-2 使用索引存取陣列內容 … 2-2
	2-3 新資料插入陣列 … 2-3
	2-4 刪除陣列元素 … 2-5
	2-5 思考陣列的優缺點 … 2-6
	2-6 與陣列有關的Python 程式 … 2-7
	2-7 習題 … 2-12
	
	第三章 鏈結串列(Linked list)
	3-1 鏈結串列資料形式與記憶體觀念 … 3-2
	3-2 鏈結串列的資料讀取 … 3-3
	3-3 新資料插入鏈結串列 … 3-3
	3-4 刪除鏈結串列的節點元素 … 3-4
	3-5 循環鏈結串列(circle linked list) … 3-4
	3-6 雙向鏈結串列 … 3-5
	3-7 陣列與鏈結串列基本操作時間複雜度比較 … 3-5
	3-8 與鏈結串列有關的Python 程式 … 3-5
	3-9 習題 … 3-19
	
	第四章 佇列(Queue)
	4-1 資料插入enqueue … 4-2
	4-2 資料讀取dequeue … 4-3
	4-3 使用串列模擬佇列的操作 … 4-4
	4-4 與佇列有關的Python 模組 … 4-6
	4-5 習題 … 4-7
	
	第五章 堆疊(Stack)
	5-1 資料堆入push … 5-2
	5-2 資料取出pop … 5-4
	5-3 Python 實作堆疊 … 5-5
	5-4 函數呼叫與堆疊運作 … 5-8
	5-5 遞迴呼叫與堆疊運作 … 5-10
	5-6 習題 … 5-13
	
	第六章 二元樹(Binary Tree)
	6-1 建立二元樹 … 6-2
	6-2 刪除二元樹的節點 … 6-4
	6-3 搜尋二元樹的數據 … 6-8
	6-4 更進一步認識二元樹 … 6-9
	6-5 記憶體儲存二元樹的方法 … 6-11
	6-6 Python 實作二元樹 … 6-12
	6-7 二元樹的缺點 … 6-39
	6-8 習題 … 6-39
	
	第七章 堆積樹(Heap Tree)
	7-1 建立堆積樹 … 7-2
	7-2 插入數據到堆積樹 … 7-4
	7-3 取出最小堆積樹的值 … 7-6
	7-4 最小堆積樹與陣列 … 7-8
	7-5 Python 內建堆積樹模組heapq … 7-9
	7-6 Python 硬功夫 - 自己建立堆積樹模組  7-15
	7-7 習題 … 7-18
	
	第八章 雜湊表(Hash Table)
	8-1 基本觀念 … 8-2
	8-2 雜湊表轉成陣列 … 8-3
	8-3 搜尋雜湊表 … 8-8
	8-4 雜湊表的規模與擴充 … 8-9
	8-5 好的雜湊表與不好的雜湊表 … 8-11
	8-6 雜湊表效能分析 … 8-12
	8-7 Python 程式應用 … 8-13
	8-8 認識雜湊表模組hashlib … 8-16
	8-9 習題 … 8-21
	
	第九章 排序
	9-1 排序的觀念與應用 … 9-2
	9-2 泡沫排序法(Bubble Sort)… 9-4
	9-3 雞尾酒排序(Cocktail Sort) … 9-10
	9-4 選擇排序(Selection Sort) … 9-14
	9-5 插入排序(Insertion Sort) … 9-18
	9-6 堆積樹排序(Heap Sort) … 9-21
	9-7 快速排序(Quick Sort) … 9-26
	9-8 合併排序(Merge Sort) … 9-29
	9-9 習題 … 9-35
	
	第十章 數據搜尋
	10-1 順序搜尋法(Sequential Search) … 10-2
	10-2 二分搜尋法(Binary Search) … 10-3
	10-3 搜尋最大值演算法 … 10-6
	10-4 習題 … 10-7
	
	第十一章 堆疊、回溯演算法與迷宮
	11-1 走迷宮與回溯演算法 … 11-2
	11-2 迷宮設計堆疊扮演的角色 … 11-5
	11-3 Python 程式實作走迷宮 … 11-6
	11-4 習題 … 11-9
	
	第十二章 從遞迴看經典演算法
	12-1 費波納契(Fibonacci) 數列 … 12-2
	12-2 河內塔演算法 … 12-4
	12-3 八皇后演算法 … 12-17
	12-4 碎形 – VLSI 設計演算法 … 12-21
	12-5 習題 … 12-25
	
	第十三章 圖形(Graph) 理論
	13-1 圖形(Graph) 的基本觀念 … 13-2
	13-2 廣度優先搜尋演算法觀念解說 … 13-6
	13-3 Python 實作廣度優先搜尋演算法 … 13-13
	13-4 深度優先搜尋演算法理論與實作 … 13-22
	13-5 習題 … 13-30
	
	第十四章 圖形理論之最短路徑演算法
	14-1 戴克斯特拉(Dijkstra's) 演算法 … 14-2
	14-2 貝爾曼- 福特(Bellman-Ford) 演算法  14-7
	14-3 A* 演算法 … 14-10
	14-4 習題 … 14-14
	
	第十五章 貪婪演算法(Greedy Algorithm)
	15-1 選課分析 … 15-2
	15-2 背包問題 – 貪婪演算法不是最完美的結果 … 15-5
	15-3 電台選擇 … 15-8
	15-4 業務員旅行 … 15-16
	15-5 NP-Complete 問題 … 15-24
	15-6 習題 … 15-25
	
	第十六章 動態規劃演算法
	16-1 再談背包問題 – 動態規劃演算法 … 16-2
					
序/導讀
	序
	
	這本書的第一版曾經獲得博客來與天瓏暢銷排行榜第1 名。
	
	市面上已經有許多演算法的書籍,這些書籍普遍的缺點如下:
	
	紙上談兵不切實際,只介紹演算法原理,只有很少的片段程式碼。讀者學會哪些書籍所述的演算法原理,最後依舊沒有實作能力,其實演算法的原理不困難,如何將原理用程式實作才是演算法的精髓。
	
	書籍不是使用 Python 實作,與當前最熱門的 Python 程式脫鉤,未來無法融入企業電腦環境。
	
	撰寫這本演算法書籍,筆者時時記住下列2 個原則:
	
	1: 用彩色圖片引導讀者認識演算法的邏輯思維,方便讀者輕鬆學習,這本書包含了約650 張演算法的邏輯思維圖片,這也是目前演算法書籍有最多彩色邏輯思維圖片的書籍。
	
	2: 教導讀者使用Python 實作演算法理論,全書共有149 個程式實例 + 71 個習題實作,這也是目前演算法書籍有最多Python 程式實例的書籍。
	
	這本書是筆者所著演算法書籍的第3 版,相較前一版,主要增加下列內容:
	
	獨家彩色圖解河內塔移動過程的步驟與原理
	自動販賣機
	基數轉換
	重新詮釋歐幾里德演算法
	網頁排名 Page Rank 演算法
	增加 LeetCode 考題
	棒球比賽得分總計
	判斷 2 個矩形是否相交
	分糖果問題
	記錄機器人行走路徑
	設計滿足小孩分餅乾的問題
	賣檸檬汁找錢的問題
	小細節修訂約 100 處
	
	這是一本使用Python 從零開始指導讀者的演算法入門書籍,從基礎資料結構與演算法開始,同時解說資訊安全演算法,網頁排名演算法,人工智慧入門的KNN 和K-means 演算法,最後則精選著名的LeetCode 考題演算法。整本書的特色是彩色圖片引導演算法理論的邏輯思維與Python 實作同步解說,讓讀者可以很輕鬆掌握相關知識。
	
	全書內容包含149 個程式實例,使用約650 張完整圖表或圖例,完整解說7 種資料結構,數十種演算法相關知識,這本書包含下列主要內容。
	
	時間複雜度
	空間複雜度
	7 大資料結構完整圖說與程式實例
	特別使用二元樹和堆疊解圖形解說遞迴中序、前序和後序列印
	7 大排序法完整圖說與程式實例
	二分搜尋與遍歷
	分治法 (Divide and Conquer)
	遞迴與回溯演算法
	八皇后與河內塔
	碎形與 VLSI 設計應用
	圖形理論
	深度、寬度優先搜尋
	Bellman-Ford 演算法
	Dijkstra's 演算法
	貪婪演算法
	動態規劃演算法
	資訊安全演算法
	摩斯與凱薩密碼
	金鑰系統觀念,也解說設計金鑰方法或是應用目前市面上成熟的金鑰。
	訊息鑑別碼 (Message authentication code)
	數位簽章 (Digital Signature)
	數位憑證 (Digital certificate)
	
	基礎機器學習 KNN 演算法,不過讀者不用擔心這是分類與迴歸的數學或是統計問題,筆者將拋棄數學公式,用很平實語句敘述搭配程式實例,讓讀者徹底了解此演算法。
	
	在機器學習的無監督學習中,K-means 演算法常被用來做特徵學習,筆者也將拋棄數學公式,用很平實語句敘述搭配程式實例,讓讀者徹底了解此演算法。
	
	網頁排名演算法
	常見的演算法考題與 Leetcode 考題
	
	一本書的誕生最重要價值是有系統傳播知識,讀者可以從有系統知識架構,輕鬆、快速學會想要的知識。
	
	寫過許多的電腦書著作,本書沿襲筆者著作的特色,程式實例豐富,相信讀者只要遵循本書內容必定可以在最短時間使用Python 精通演算法應用,編著本書雖力求完美,但是學經歷不足,謬誤難免,尚祈讀者不吝指正。
	
	洪錦魁2022/10/10
	jiinkwei@me.com
詳細資料
詳細資料
- 
                                        
- 語言
 - 中文繁體
 - 裝訂
 
 - 
                                        
- ISBN
 - 9786267146583
 - 分級
 - 普通級
 
 - 
                                        
- 頁數
 - 448
 - 商品規格
 - 23*17
 
 - 
                                        
- 出版地
 - 台灣
 - 適讀年齡
 - 全齡適讀
 
 - 
                                        
- 注音
 - 級別
 
 
訂購/退換貨須知
購買須知:
使用金石堂電子書服務即為同意金石堂電子書服務條款。
電子書分為「金石堂(線上閱讀+APP)」及「Readmoo(兌換碼)」兩種:
- 請至會員中心→電子書服務「我的e書櫃」領取複製『兌換碼』至電子書服務商Readmoo進行兌換。
 
退換貨須知:
- 因版權保護,您在金石堂所購買的電子書僅能以金石堂專屬的閱讀軟體開啟閱讀,無法以其他閱讀器或直接下載檔案。
 - 依據「消費者保護法」第19條及行政院消費者保護處公告之「通訊交易解除權合理例外情事適用準則」,非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書、電子雜誌、下載版軟體、虛擬商品…等),不受「網購服務需提供七日鑑賞期」的限制。為維護您的權益,建議您先使用「試閱」功能後再付款購買。
 
    
        
                  
                
		


商品評價