---
title: "演算法（Algorithm）"
slug: algorithm
language: zh-TW
source: https://aiterms.tw/terms/algorithm
updated_at: 2026-04-29
tags: [AI基礎, 最佳化, 資料處理, 統計方法, Python程式, 數學基礎, iPAS初級]
ipas_term: false
---

# 演算法（Algorithm）

> **你有沒有照著食譜做菜，還是覺得步驟順不順很重要？**
>
> 你可以把演算法想成一組清楚的步驟，告訴電腦要怎麼把輸入變成輸出。它不是程式碼本身，而是解決問題的方法和順序。
>
> 這很重要，因為同一個問題可以有很多做法，好的演算法能讓程式跑得更快、吃更少記憶體，也更容易維護。

### 容易混淆

> **演算法 vs 程式碼**
>
> 演算法是做事的方法。
>
> 程式碼是把方法寫成電腦看得懂的語言。
>
> 最關鍵的區別：一個是思路，一個是實作。
>
> **演算法 vs 模型**
>
> 演算法是解題流程。
>
> 模型是從資料學到的規則或參數。
>
> 最關鍵的區別：一個靠規則，一個靠訓練。
>
> **演算法 vs 流程圖**
>
> 流程圖只是把步驟畫出來。
>
> 演算法還要能真的解決問題。
>
> 最關鍵的區別：流程圖是表達，演算法是方法。

### 記住這句就好

> 能把問題變成步驟的，就是演算法。

### 實際案例

> **路線規劃**
>
> 導航 App 要從台北車站到目的地，不是亂猜，而是用最短路徑的演算法去找最省時或最省距離的路。
>
> **垃圾郵件判斷**
>
> 郵件系統可能先做關鍵字比對，再算特徵分數，最後決定是否進垃圾桶，整套判斷流程本身就是演算法。

### 算法與應用

> **常看的三件事**
>
> 時間複雜度、空間複雜度、正確性，通常是評估演算法好壞的基本三角。
>
> **常見應用**
>
> 搜尋、排序、路徑規劃、文字處理、推薦排序，幾乎所有 AI 與資訊系統都離不開演算法。

### 情境判斷

> **Q1（直覺題）：** 你要把 1 到 100 排序，應該只看哪個方法先寫得出來嗎？
>
> → 不只看能不能寫出來，還要看時間和空間成本，因為演算法效率會影響實際使用。
>
> **Q2（判斷題）：** 一個方法在小資料上很快，但資料一大就卡住，這還算好演算法嗎？
>
> → 要看情況。若你的場景永遠只有小資料，它可能夠用，但只要資料規模會長大，就要重新評估。

### 常見問題

> **Q：演算法一定要很複雜嗎？**
>
> 不一定，很多時候最好的演算法就是最簡單、最好維護的那個。
>
> **Q：演算法和 AI 有什麼關係？**
>
> AI 系統也需要演算法來做搜尋、訓練、推論和排序，不是只有模型在工作。
>
> **Q：為什麼時間複雜度重要？**
>
> 因為資料變大時，差一個次方就可能差很多，會直接影響能不能上線。
>
> **Q：學演算法一定要先背很多公式嗎？**
>
> 不用先背，先看懂問題怎麼拆、怎麼比較方法，會比較有效。

### 相關術語

> - **機器學習**：很多學習流程背後都靠演算法組合
> - **人工智慧**：演算法是 AI 系統的基礎骨架
> - **資料前處理**：前處理本身也常是演算法問題
> - **監督式學習**：理解這類學習方式時會一直碰到演算法設計

---

來源：https://aiterms.tw/terms/algorithm
快查頁：https://aiterms.tw/terms/algorithm
最後更新：2026/04/29
深度解說：https://aiterms.tw/learning/what-is-algorithm