• 課程時長

    4 小時 22 分

  • 課程級別

    初級

  • 授課語言

    中文

這堂課你將會學到

  • 五大演算法策略:貪婪法、枚舉法、回溯法、分支界線法、分制法
  • 排序演算法:氣泡排序、插入排序、選擇排序
  • 資料結構:Stack & Queue
  • 資料結構:Array & Linked List
  • 演算法策略:深度優先(DFS) vs 廣度優先(BFS)
  • 演算法效能:時間複雜度(BigO)
  • 演算法實作:迴圈(Loop) vs 遞迴(Recursion)

章節目錄

  • 1

    第 1 章 打開演算法的大門

    • 單元 1 - 【觀念講解】一次搞懂「資料結構」與「演算法」到底是什麼

    • 單元 2 - 【觀念講解】演算法的品質:什麼才是「好」的演算法?

    • 單元 3 - 【觀念講解】演算法的基底結構:陣列(Array) vs 連結串列(Linked List)

    • 單元 4 - 〖實戰演練〗演算法的基底結構:陣列(Array)

    • 單元 5 - 〖實戰演練〗演算法的基底結構:陣列(Array) 完整程式碼

    • 單元 6 - 〖實戰演練〗演算法的基底結構:鏈結串列(Linked List)

    • 單元 7 - 〖實戰演練〗演算法的基底結構:鏈結串列(Linked List) 完整程式碼

    • 單元 8 - 【觀念講解】演算法的實作風格:迴圈 (loop) x 吃角子老虎

    • 單元 9 - 【觀念講解】演算法的實作風格:遞迴 (recursion) x 老和尚說故事

    • 單元 10 - 【觀念講解】演算法的基底策略:衝到底(DFS) vs 公平走(BFS)?

    • 單元 11 - 【觀念講解】演算法好兄弟:衝到底(DFS) + 遞迴(Recursion)

    • 單元 12 - 【觀念講解】演算法好姐妹:公平走(BFS) + 迴圈(Loop)

  • 2

    第 2 章 初出茅廬,小試身手:「排序演算法」▁▂▃▅▆▇

    • 單元 1 - 【觀念講解】氣泡排序 (Bubble Sort)

    • 單元 2 - 〖LiveCode〗氣泡排序 (Bubble Sort) 迴圈

    • 單元 3 - 〖LiveCode〗氣泡排序 (Bubble Sort) 迴圈➜遞迴 (重要)

    • 單元 4 - 〖LiveCode〗氣泡排序 (Bubble Sort) 完整程式碼

    • 單元 5 - 【觀念講解】插入排序 (Insertion Sort)

    • 單元 6 - 〖LiveCode〗插入排序 (Insertion Sort) 迴圈

    • 單元 7 - 〖LiveCode〗插入排序 (Insertion Sort) 迴圈➜遞迴 (重要)

    • 單元 8 - 〖LiveCode〗插入排序 (Insertion Sort) 完整程式碼

    • 單元 9 - 【觀念講解】選擇排序 (Selection Sort)

    • 單元 10 - 〖LiveCode〗選擇排序 (Selection Sort) 迴圈

    • 單元 11 - 〖LiveCode〗選擇排序 (Selection Sort) 迴圈➜遞迴 (重要)

    • 單元 12 - 〖LiveCode〗選擇排序 (Selection Sort) 完整程式碼

  • 3

    第 3 章 掌柜的,來一碗資料結構!

    • 單元 1 - 【觀念講解】Stack (LIFO):吃洋芋片也能學資料結構!? Σ(゚д゚)

    • 單元 2 - 〖實戰演練〗Stack (LIFO):吃洋芋片也能學資料結構!? Array

    • 單元 3 - 〖實戰演練〗Stack (LIFO):完整程式碼 Array

    • 單元 4 - 〖實戰演練〗Stack (LIFO):吃洋芋片也能學資料結構!? List

    • 單元 5 - 〖實戰演練〗Stack (LIFO):完整程式碼 List

    • 單元 6 - 【觀念講解】Queue (FIFO):排隊買票看鬼滅 ︻︻▅▆▇◤

    • 單元 7 - 〖實戰演練〗Queue (FIFO):排隊買票看鬼滅 Array

    • 單元 8 - 〖實戰演練〗Queue (FIFO):完整程式碼 Array

    • 單元 9 - 〖實戰演練〗Queue (FIFO):排隊買票看鬼滅 List

    • 單元 10 - 〖實戰演練〗Queue (FIFO):完整程式碼 List

    • 單元 11 - 【觀念講解】Priority Queue:排隊上廁所,憋不住拉! இдஇ

    • 單元 12 - 〖實戰演練〗Priority Queue:排隊上廁所,憋不住拉!

    • 單元 13 - 〖實戰演練〗Priority Queue:完整程式碼

  • 4

    第 4 章 扎根腳步:五大演算法策略

    • 單元 1 - 【觀念講解1】貪婪法 (Greedy):自信心爆棚,找零錢

    • 單元 2 - 【觀念講解1】貪婪法 (Greedy):自信心爆棚,走迷宮

    • 單元 3 - 〖課後作業1〗貪婪法 (Greedy):自信心爆棚,走迷宮

    • 單元 4 - 〖實戰演練1〗貪婪法 (Greedy):自信心爆棚,走迷宮

    • 單元 5 - 〖實戰演練1〗貪婪法 (Greedy):完整程式碼

    • 單元 6 - 【觀念講解2】枚舉法 (Enumeration) :我不聰明,但我很實在

    • 單元 7 - 〖實戰演練2〗枚舉法 (Enumeration) :我不聰明,但我很實在

    • 單元 8 - 〖實戰演練2〗枚舉法 (Enumeration) :完整程式碼

    • 單元 9 - 【觀念講解3】回溯法 (Backtracking) :菜市場挑橘子,找出合格解們

    • 單元 10 - 〖實戰演練3〗回溯法 (Backtracking):菜市場挑橘子,找出合格解們

    • 單元 11 - 〖實戰演練3〗回溯法 (Backtracking):完整程式碼

    • 單元 12 - 【觀念講解4】分枝界限法 (branch and bound):丈母娘選婿,挑出最佳解

    • 單元 13 - 〖實戰演練4〗分枝界限法 (branch and bound):丈母娘選婿,挑出最佳解

    • 單元 14 - 〖實戰演練4〗分枝界限法 (branch and bound):完整程式碼

    • 單元 15 - 【觀念講解2~4】暴力解策略:枚舉法 vs 回溯法 vs 分枝界限法

    • 單元 16 - 【觀念講解5】分治法 (Divide & Conquer):大事化小,小事化無

    • 單元 17 - 【觀念講解5】分治法 (Divide & Conquer):河內塔 (Hanoi Tower)

    • 單元 18 - 〖實戰演練5〗分治法 (Divide & Conquer):河內塔 (Hanoi Tower)

    • 單元 19 - 〖實戰演練5〗分治法 (Divide & Conquer):完整程式碼