
我對本課程有興趣
課程資訊
開課日期
2025-05-24
學習時程
30
上課時間
週六,週日
上課時段
上午
適用對象
本課程適合掌握基本程式能力並想加點演算法技能樹的學員;不限程式語言,若具備 C、C++、Java、C#、JavaScript 等語言能力者佳,Python 使用者亦可;必要能力為迴圈 (loop)、陣列 (array)、與遞迴 (recursion),已初步認識結構 (struct)、類別 (class)、物件 (object) 等概念者佳。
課程特色
[0] Robert Sedgewick and Kevin Wayne, Algorithms, 4/e, 2011.
[1] LeetCode
[2] 十二年國民基本教育課程綱要國民中學暨普通型高級中等學校 - 科技領域
[3] APCS 大學程式設計先修檢測
詳細內容
1. 串鏈 (linked list)、堆疊 (stack)、佇列 (queue)
2. 二元搜尋樹 (binary search tree) 與紅黑樹 (red-black tree)
3. 雜湊 (hashing) 與雜湊表 (hash table)
4. 無向圖 (undirected graph) 與有向圖 (digraph)
-- 深度優先搜尋 (depth-first search, DFS)
-- 廣度優先搜尋 (breadth-first search, BFS)
-- 拓樸排序 (topological sort)
-- 最小生成樹 (minimum spanning tree)
-- 最短路徑演算法 (shortest path)
5. 字串 (string)
-- 基數排序 (radix sort)
-- 字典樹 (trie)
-- Knuth-Morris-Prat (KMP) 演算法
-- 正則表示法 (regular expression)
-- 霍夫曼樹 (Huffman tree)
6. 動態規畫 (dynamic programming, DP)
7. 貪婪演算法 (greedy algorithms)
8. 組合搜尋 (combinatorial search) 與回溯法 (backtracking)
9. 隨機演算法 (randomized algorithms)
-- 亂數生成演算法
-- 蒙地卡羅演算法 (Monte Carlo algorithms)
-- 拉斯維加斯演算法 (Las Vegas algorithms)
10. 近似演算法 (approximation algorithms)
11. 計算理論 (computing theory)
-- 有限狀態機 (finite state machine)
-- 圖靈機 (the Turing machine)
-- NP 完備問題 (NP-complete problems)
註0:更新於 2024-06-15。
註1:課程內容將根據當時上課狀況會有適當調整,詳見課程網頁。
師資介紹
盧政良
(一) 經驗
臺灣大學 腦與心智科學研究所 兼任研究助理 (2014.8--present)
臺灣大學 資訊工程學系 資訊系統訓練班 講師 (2014.1--present)
中國信託商業銀行 全球金融商品交易處 期貨自營部 實習研究員 (2014.1--2023.9)
臺灣大學 資訊工程學系 課程助教:計算理論、離散數學、財務演算法 (2012.9--2024.7)
(二) 學歷
臺灣大學資訊工程研究所 博士
交通大學電信工程研究所 碩士
中央大學電機工程學系 學士
(三) 研究興趣 / 專長
Financial Engineeering, Quantitative Finance, and Algorithmic Trading
Analysis & Design of Algorithms
Statistics, Data Science, Machine Learning / Deep Learning
Computing Theory and Programming Languages
System Design & Administration and High Performance Computing
(四) 教學特色
中文授課,課程教材以英文為主。適合規劃出國求學或對科學 / 技術理論有興趣的學員。
2014 年至本班教學,累計授課時數至 2024 年 8 月 12 日為 11850 小時。
備註
詳細課程資訊,請參考資訊系統訓練班【最新課程】連結:
https://train.csie.ntu.edu.tw/train/course.php?id=5290&bid=440
注意事項:
5/31(六)-6/1(日)端午連假不上課,課程日期已順延