演算法一直是電腦科學領域非常重要的基礎課程,從程式語言實作的角度,確實是有志從事資訊工作的專業人員,不得不重視的一門基礎理論。
本書將會跟各位介紹運算思維、資料結構與演算法,精彩篇幅包括:
● 程式設計與運算思維
● 常用資料結構與演算法
● 分治法
● 貪心法
● 動態規劃法
● 安全性演算法
● 樹狀演算法
● 改變程式功力的經典演算法
● 遊戲設計演算法
為了幫助更多人用最輕鬆的方式了解各種演算法的主要重點,本書特別針對採用豐富圖例來闡述基本概念,並將演算法概念做最意簡言明的詮釋及舉例,期能將各種運算思維與演算法應用在程式設計的領域。因此,這是一本兼具內容及專業的運算思維與演算法的入門課程首選。
第一章 程式設計與運算思維 1-1 認識運算思維 1-2 演算法的條件
第二章 常用資料結構與演算法 2-1 認識資料結構 2-2 常見資料結構 2-3 矩陣與深度學習 2-4 串列 2-5 堆疊 2-6 佇列 2-7 樹狀結構 2-8 圖形簡介 2-9 雜湊表
第三章 分治法 3-1 分治法簡介 3-2 遞迴法 3-3 河內塔演算法 3-4 快速排序法 3-5 合併排序法 3-6 二分搜尋法
第四章 貪心法 4-1 貪心法簡介 4-2 最小花費擴張樹(MST) 4-3 圖形最短路徑法
第五章 動態規劃法 5-1 動態規劃法簡介 5-2 字串比對功能 5-3 AOV 網路與拓樸排序 5-4 AOE 網路 5-5 青蛙跳臺階演算法
第六章 安全性演算法 6-1 資料加密 6-2 雜湊演算法 6-3 碰撞與溢位處理
第七章 樹狀演算法 7-1 二元樹走訪 7-2 二元搜尋樹 7-3 最佳化二元搜尋樹 7-4 平衡樹(AVL 樹) 7-5 決策樹- 八枚金幣問題 7-6 堆積樹排序法 7-7 費氏搜尋樹演算法
第八章 改變程式功力的經典演算法 8-1 疊代法 8-2 枚舉法 8-3 回溯法
第九章 遊戲設計演算法 9-1 遊戲數學與物理演算法 9-2 圖形走訪演算法 9-3 碰撞處理演算法 9-4 基因演算法