用台語講演算法
予你會當用台語來解釋電腦的演算法。
hōo lí ē-tàng iōng Tâi-gí lâi kái-sueh tiān-náu ê ián-sǹg-huat.
info
《演算法來用台語講》內底包含誠濟台語新詞的創作,目的是鼓勵咱去揣看覓敢有較適合 ê 詞,來解說予電腦走 ê 演算法。你若有發現寫毋著 ê 所在,請佇下跤留話抑是寫電子批共我講,我會趁有閒的時陣來改,請手梳攑懸,多謝!
🚀 這个網站使用 ê HackMD 平台,是一个會當予逐家做伙參與來寫 ê 網站,你若有興趣做伙合作,也請佇下跤留話抑是寫電子批共我講。
✉️ 電子批: minsiansu@gmail.com
英語 | 台語 Tâi-gí | 台灣華語 | 中国翻译 | 解釋 |
---|---|---|---|---|
1D Dynamic Programming | 一次元動態計算 tsi̍t tshù-guân tōng-thài-kè-soàn | 1 維動態規劃 | 一维动态规划 | 使用一維陣列來解決需要考慮一個變數的最佳化問題,通過將問題拆解成子問題並記錄中間結果來提高效率。 |
2D Dynamic Programming | 二次元動態計算 jī tshù-guân tōng-thài-kè-soàn | 2 維動態規劃 | 二维动态规划 | 使用二維陣列來解決需要考慮兩個變數的最佳化問題,通過將問題拆解成子問題並記錄中間結果來提高效率。 |
Algorithm | 演算法/計算術 ián-sǹg-huat/kè-soàn-su̍t | 演算法 | 算法 | 用來解決問題或完成任務的方法。 |
All pairs shortest path | 凊彩兩點之間的上短路程 tshìn-tshái nňg-tiám tsi-kan ê siōng té lōo-tîng | 任兩點之間的最短路徑 | 任两点之间的最短路径 | 在加權圖中,計算每對節點之間的最短路徑。 |
Array | 陣列 tīn-lia̍t | 陣列 | 数组 | 陣列是一種資料結構,用來儲存具有相同型別的多個元素,這些元素在記憶體中是連續排列的,可以透過索引快速存取每個元素。 |
Array transformation | 陣列轉換 tīn-lia̍t tsuán-uānn | 陣列轉換 | 数组转换 | 在一個連接首尾形成環狀結構的數組中進行操作或處理,如循環索引或資料迴圈。 |
Auxiliary data structures | 輔助資料結構 hú-tsōo-tsu-liāu-kiat-kòo | 輔助資料結構 | 辅助数据结构 | 使用額外的資料結構解決問題。 |
Backtracking | bak-kuh 演算法 bak-kuh-ián-sǹg-huat | 回溯法 | 回溯法 | Brute-force 的一種,透過不斷嘗試,如果遇到不符合條件就回溯到之前的選擇,來逐步找到解決問題的所有可能解答。 |
Balance problems | 平衡問題 pîng-hîng-būn-tê | 平衡問題 | 平衡问题 | 在資料結構中,保持各元素或資源間分佈均勻。例如找出分割點使兩邊和相等 |
Bellman-Ford algorithm | 貝爾曼-福特演算法 Puè-ní-bān Hok-ti̍k ián-sǹg-huat | 貝爾曼-福特演算法 | 贝尔曼-福特算法 | 一種用於計算從單一起點到其他所有點的最短路徑的演算法,且能處理帶有負權重邊的圖。 |
BFS with queue | 使用排陣做成闊度代先搜揣 sú-iōng pâi-tīn tsò-tsiânn khuah-tōo-tāi-sing-tshiau-tshuē | 使用佇列實現廣度優先搜尋 | 使用队列实现广度优先搜索 | 使用佇列實現廣度優先搜尋。 |
Bi-connected components | 雙連結元件 siang-liân-kiat-guân-kiānn | 雙連通元件 | 双连通分量 | 在無向圖中,每個元件中的任意兩個節點在去除圖中的任何一條邊後仍能保持連通的最大節點集合。 |
Bidirectional breadth-first search | 雙爿闊度代先搜揣 siang-pîng-khuah-tōo-tāi-sing-tshiau-tshuē | 雙向廣度優先搜尋 | 双向广度优先搜索 | 雙向廣度優先搜尋是一種圖搜尋演算法,從起點和終點同時進行廣度優先搜尋,當兩邊搜尋相遇時,即找到最短路徑,這樣可以有效減少搜尋空間和時間。 |
Binary lifting | 增倍法 tsing-puē-huat | 倍增 | 倍增 | 在樹狀結構上進行快速查詢與計算的演算法,特別適用於 LCA 等問題的解決方法。 |
Binary search | 破爿搜揣演算法 phuà-pîng tshiau-tshuē ián-sǹg-huat | 二元搜尋演算法 | 二分查找算法 | 一種有效率的搜尋演算法,能在有序陣列或資料集中快速尋找目標值的方法。 |
Binary search tree (BST) | 雙爿搜揣樹 siang-pîng-tshiau-tshuē-tshiū | 二元搜尋樹 | 二叉查找树 | 一種樹狀結構,其中每個節點最多有兩個子節點,並且滿足左子節點的值小於父節點的值,而右子節點的值大於父節點的值。這種結構使得在樹中查找、插入和刪除節點都能夠以較高的效率完成。 |
Binary tree | 雙爿樹 siang-pîng-tshiū | 二元樹 | 二叉树 | 一種樹狀資料結構,其中每個節點最多有兩個子節點,用於組織資料以及進行有效的搜尋和排序。 |
Bit manipulation | 位元計算 uī-guân-kè-sǹg | 位元運算 | 位元运算 | 利用二進位資料的運算來有效的處理和操作數字。 |
Boundary walking | 邊頭行徙 pinn-thâu-kiânn-suá | 邊界行走 | 边界行走 | 在資料結構或圖形處理中,用來沿著特定區域或物件的邊界進行走訪的方法。 |
Boyer-Moore voting algorithm | 投票演算法 tâu-phiò ián-sǹg-huat/摩爾投票演算法 moo-ní-tâu-phiò ián-sǹg-huat | 多數投票演算法/摩爾投票演算法 | 多数投票算法/摩尔投票算法 | 在線性時間內找出陣列中主要元素的方法。 |
Branch and bound algorithm (BB) | 分叉隔界演算法 hun-tshe-keh-kài ián-sǹg-huat | 分支定界演算法 | 分支定界算法 | 在解決最佳化或搜索問題時,透過分支、搜索和剪枝來有效地尋找最佳解或全域最優解的演算法。 |
Breadth-first search | 闊度代先搜揣演算法 khuah-tōo tāi-sing tshiau-tshuē ián-sǹg-huat | 廣度優先搜尋 | 广度优先搜索 | 從起始節點開始逐層擴展探索,確保先探索所有相鄰節點,適合用於尋找最短路徑或狀態空間的解決方案。 |
Brute-force (BF) | 拚勢演算法 piànn-sè ián-sǹg-huat | 暴力演算法 | 暴力法 | 透過走訪所有的情況,尋找最佳解,通常是在面試時難以立即想出最佳解時提出的解法。根據與面試官的討論,有可能會衍生出其他更適合的解決方案。 |
Bubble sort | 起波排序 khí-pho-pâi-sī | 冒泡排序 | 冒泡排序 | 一種簡單的排序演算法,通過重複比較相 鄰元素並交換它們的位置,將較大的元素「冒泡」到陣列的末尾。 |
Bucket sort | 桶仔排序 tháng-á-pâi-sī | 桶排序 | 桶排序 | 一種將資料分配到不同桶中進行排序的演算法,然後再將桶中的資料合併以完成整體排序。 |
Cellular automata | 細胞自動機 sè-pau-tsū-tōng-ki | 細胞自動機 | 细胞自动机 | 一種數學模型,通過在格狀空間中對每個單元格進行局部規則更新來模擬複雜系統的演化。 |
Chessboard problems | 棋盤問題 kî-puânn būn-tê | 棋盤問題 | 棋盘问题 | 在棋盤上進行特定操作或解決問題,例如放置棋子、尋找路徑或解決擺放問題。 |
Circular array problems | 圓箍陣列問題 înn-khoo tīn-lia̍t būn-tê | 環型陣列問題 | 环型数组问题 | 在一個環狀結構的陣列中進行操作或解決問題,例如處理循環查詢或走訪。 |
Combination problems | 組合問題 tsoo-ha̍p būn-tê | 組合問題 | 组合问题 | 在給定的元素集合中,找出所有可能的子集或排列組合的方法。 |
Complete Binary Tree (CBT) | 完全雙爿樹 uân-tsuân siang-pîng-tshiū | 完全二元樹 | 完全二叉树 | 一種二元樹,每一層都被完全填滿,除了最後一層外,其餘節點都靠左對齊。 |
Connected components | 連結元件 liân-kiat-guân-kiānn | 連通元件 | 连通分量 | 在無向圖中,任意兩個節點在同一個元件內都可以互相到達的最大節點集合。 |
Connected graph | 連結圖 liân-kiat-tôo | 連通圖 | 连通图 | 在無向圖中,任意兩個節點之間都可以通過一條或多條邊互相到達。 |
Counting sort | 計數排序 kè-sòo-p âi-sī | 計數排序 | 计数排序 | 一種非比較排序演算法,通過統計每個元素的出現次數來確定元素的最終位置,並按計數結果進行排序。 |
Cumulative product | 累積乘積 luí-tsik-sîng-tsik | 累積乘積 | 累积乘积 | 在一個數列中每個元素與其之前所有元素相乘所得到的連續乘積。 |
Cumulative sum calculation | 累積和計算 luí-tsik-hô-kè-sǹg | 累積和計算 | 累积和计算 | 計算並儲存從開始到每個位置的累積和。 |
Cycle detection | 循環檢查 sûn-khuân kiám-tsa | 環檢測 | 环检测 | 環檢測是用來識別資料結構(如圖或鏈結串列)中是否存在迴圈或循環的演算法。 |
Cyclic replacements | 循環替換 sûn-khuân-thè-uānn | 循環替換 | 循环替换 | 在一個序列中,按照特定規則或循環模式進行元素位置互換的操作。 |
Data structure | 資料結構 tsu-liāu-kiat-kòo | 資料結構 | 数据结构 | 資料結構是一種組織和儲存資料的方式,以便於有效率的存取和修改。 |
Define pointer roles | 定義指標的角色 tīng-gī tsí-piau ê kak-sik | 定義指標角色 | 定义指针角色 | 定義指標的用途或行為,例如一個用於讀取,一個用於寫入。 |
Depth-first search | 深度代先搜揣演算法 tshim-tōo tāi-sing tshiau-tshuē ián-sǹg-huat | 深度優先搜尋演算法 | 深度优先搜索算法 | 一種圖或樹的搜尋演算法,優先從起始節點深入到最深的分支,再回溯至上一節點繼續搜尋未探索的路徑。 |
Difference calculation | 精差計算 tsing-tsha-kè-sǹg | 差值計算 | 差值计算 | 找出兩個數值或集合之間的差。 |
Dijkstra's algorithm | 戴克斯特拉演算法 tài-khik-su-ti̍k-lá ián-sǹg-huat | 戴克斯特拉演算法 | 戴克斯特拉算法 | 計算從單一起點到圖中所有其他點的最短路徑,前提是圖中邊的權重皆為非負數。 |
Directed acyclic graph (DAG) | 有向無環圖 ū-hiòng-bô-huân-tôo | 有向無環圖 | 有向无环图 | 一種有向圖,其中不存在任何循環,且邊的方向從不形成迴路。 |
Directed graph | 有向圖 ū-hiòng-tôo | 有向圖 | 有向图 | 有向圖問題(Directed Graph Problems)是指在有向圖中處理節點和邊的各種問題,如尋找最短路徑、拓撲排序或循環檢測。 |
Direction arrays | 方向陣列 hong-hiòng-tīn-lia̍t | 方向陣列 | 方向数组 | 使用預定義的方向陣列來簡化走訪和鄰居檢查,例如 directions = [[0, 1], [0, -1], [1, 0], [-1, 0]]。 |
Divide and conquer | 分開解決法 hun-khui-kái-kuat-huat | 各個擊破法 | 分治法 | 將題目分成一樣的小題目,最後將結果合併起來,經常應用在其他的演算法中。 |
Doubly linked list | 雙爿鍊仔列 siang-pîng-liān-á-lia̍t | 雙向鏈結串列 | 双向链表 | 鏈結串列的一種,每個節點包含指向前後兩個節點的指標,使得走訪可以在兩個方向進行。 |
Dynamic programming (DP) | 動態計算 tōng-thài-kè-soàn | 動態規劃 | 动态规划 | 一種通過將問題拆分為較小子問題,並保存它們的解以避免重複計算的方法。 |
Edge case handling | 邊界情況處理 pian-kài-tsîng-hóng-tshú-lí | 邊界情況處理 | 边界情况处理 | 注意處理矩陣的邊界和角落元素。 |
Enumerate | 列舉 lia̍t-kí |