旗標知識講堂

演算法、algorithm、最佳化演算法、Binary trees

Michelle

Editor

2023/03/14

【好書推薦】會動的演算法:61 個演算法動畫+全圖解逐步拆解

★★★用手機掃描書中 QR Code 立即觀看演算法動畫!★★★
⦿ 一圖一步驟,帶你打開演算法的黑箱!
⦿ 全彩超圖解,將抽象的演算法視覺化!
⦿ 內容淺顯易懂,沒有長篇難懂的理論!
「演算法」給人的第一印象就是好難學、理論好多,即使讀完千字文還是看不懂!o(〒﹏〒)o
沒錯!小編非常有同感,第一次接觸演算法時,就被「時間複雜度」弄得暈頭轉向,我一點也不想知道這些數學式是怎麼推導的啊,只要知道哪個演算法比較快、比較好用就可以了!還有,常遇到同一個詞有不同說法,在 Google 搜尋時就會搞不清楚是不是指同一件事,例如 Binary Tree Traversal,就有「二元樹追蹤、二元樹訪問、二元樹走訪、二元樹遍歷……」,這麼多種稱呼,實在讓人困惑!所以本書的專有名詞除了標示中文外,也會加上英文,以便讀者查詢更多資訊。
透過本書一圖一步驟地拆解演算法背後的原理,我終於弄懂演算法的運作了,其實演算法沒有想像中那樣神秘、可怕,而是有規則可循的。看懂其運作原理後,由衷佩服這些設計演算法的人,原來他們是這樣思考與拆解問題的啊,我怎麼都沒想到呢!
本書收錄許多知名的演算法與資料結構,其中有些演算法已經被主流的程式語言編寫成方便使用的「函式庫」。不過「函式庫」是一種將工作原理藏在內部的「黑箱」,因此大多數人在使用時不見得對演算法有充分的理解。想要寫出執行效能佳的程式,得確實理解演算法的工作原理才行。
本書介紹的資料結構與演算法
✪陣列的查詢:
互換元素/尋找最大值/互換排序/合計/最小元素值/最小元素位置/線性搜尋法/二元搜尋法
✪排序:
反轉/插入/合併/分割/氣泡排序法/選擇排序法/插入排序法/合併排序法/快速排序法/堆積排序法/計數排序法/希爾排序法
✪與整數相關的演算法:
埃拉托斯特尼篩法/輾轉相除法
✪資料結構:
堆疊/佇列/雙向鏈結串列/雜湊表
✪陣列的計算:
累積和/一維累積和的應用/二維累積和的應用
✪堆積:
Up Heap/Down Heap/建立堆積/優先佇列
✪二元樹的走訪:
前序走訪/後序走訪/中序走訪/層序走訪
✪其他:
廣度優先搜尋/卡恩演算法/深度優先搜尋/Tarjan 演算法/Union By Rank/Union-Find Tree/普林演算法/克魯斯克爾演算法/戴克斯特拉演算法/貝爾曼 - 福特演算法/弗洛伊德演算法/包裹法/葛立恆掃描法/安德魯演算法/線段樹:RMQ/線段樹:RSQ/二元搜尋樹/旋轉/樹堆……
【本書特色】
★ 觀看【演算法動畫】同時搭配書中的原理說明,讓學習效果翻倍!
★ 收錄【61 個經典的演算法+資料結構】,讓你活化思維並提升邏輯思考力!
★ 【豐富的圖解及圖示設計】將抽象的演算法視覺化,易讀易學好吸收!
★ 逐步拆解演算法的運作原理、解析執行效率及優缺點,突破盲點、顛覆思考。
★ 沒有難懂的數學推導及長篇理論說明,降低學習門檻!
【目錄】
Part 1 準備篇
 第 1 章 程式設計的基本元素
 第 2 章 程式設計的應用元素
 第 3 章 演算法的基礎概念
Part 2 空間結構
 第 4 章 空間結構的概要
 第 5 章 陣列
 第 6 章 樹狀結構
 第 7 章 圖形
 第 8 章 點群
 第 9 章 動態結構
Part 3 演算法與資料結構
 第 10 章 入門
 第 11 章 陣列基本查詢
 第 12 章 搜尋
 第 13 章 陣列元素排序
 第 14 章 必學的排序法
 第 15 章 與整數相關的演算法
 第 16 章 基本資料結構 1
 第 17 章 陣列的計算
 第 18 章 堆積
 第 19 章 二元樹的走訪
 第 20 章 高效率的排序法
 第 21 章 基本資料結構 2
 第 22 章 廣度優先搜尋
 第 23 章 深度優先搜尋
 第 24 章 Union-Find Tree
 第 25 章 尋找最小生成樹的演算法
 第 26 章 最短路徑演算法
 第 27 章 計算幾何
 第 28 章 線段樹
 第 29 章 搜尋樹
0 0 174 0