跳到主要內容
:::

教育百科logo

::: 演算法 - 教育百科
國家教育研究院辭書
基本資料
英文: Algorithm
作者: 吳正己
日期: 2000年12月
出處: 教育大辭書
辭書內容
名詞解釋:
  演算法的英文原義是由九世紀波斯的數學家Mohammedal-Khowãrizmî的名字演變而來,以拉丁文表示則為Algorismus,他提供了十進位加、減、乘、除的運算法則。而最早出現的演算法可以追溯到西元前三百五十年左右,希臘數學家歐幾里德(Euclid)所發現求二個正整數最大公約數的演算過程。一般演算法的定義是指特定問題的特定解法。如煮菜時依食譜所定的步驟及說明烹調,則食譜中所載的步驟說明即是一種演算法,藉著它可以解決特定的問題(得到佳餚)。又如教小孩折紙,折紙皆有特定的步驟,這些步驟也可以稱為演算法。
  一九五○年代後,電腦科技的興起,演算法中有了新的涵意:能在有限的時間內完成明確界定的演算過程。到了一九七○年代,幾乎電腦的各個領域,由基本理論到電腦的應用均普遍採用演算法,並且自成體系,成為電腦科學的一個重要領域。它是電腦用以解決問題的思考工具,如程式設計解題時,須先以演算法設計解題的步驟,而後才將這些步驟以某一種程式語言的語法轉化為程式。所以,在電腦科學領域所定義的演算法,必須:
  1.以有限個步驟描述。
  2.各步驟均可在電腦上完成。
  3.步驟間的流程明確。
  4.經過有限次的步驟執行後會終止。
  演算法的描述,早期使用流程圖或虛擬的演算法語言(如Algol),目前則演變到採用近似Pascal的語言,或者以自然語言(如中文或英文)描述,使用的描述語言除須能明確表達演算法之邏輯關係外,更應力求簡單易懂。
  演算法的設計與分析之所以重要,係因其累積了前人數十年的設計經驗,它不但可以使電腦更有效率的執行工作,也提供分析問題的基本工具。
資料來源: 國家教育研究院_演算法
授權資訊: 資料採「 創用CC-姓名標示- 禁止改作 臺灣3.0版授權條款」釋出
基本資料
英文: Algorithm
作者: 莊道明
日期: 1995年12月
出處: 圖書館學與資訊科學大辭典
辭書內容
名詞解釋:
  演算法是指一組用以解決問題而可以逐步執行的步驟或程序而言。演算法的英文字源最早來西元9世紀波斯數學家穆罕默德.克瓦里茲(Mohammedal-Khowarizmi)的名字 ,後來演變成拉丁文中的Algorismus。根據歷史記載,穆罕默德.克瓦里茲是最早發明逐步演算十位數加減乘除運算法則的數學家。現今在電腦科學上,凡可用於解決電腦程式的執行或運算的任何方法,均可稱之為演算法。由於電腦演算法的研究,常與資料的組織方式有關,因此,電腦演算法的研究也常涉及資料結構(Data Structures)的研究。
  演算法的設計中,首要建立一套基本法則,利用這些基本法則為基礎才能建構出完整的演算法。例如,以機器人控制的演算法建構為例,基本的硬體要件包括機器輪軸、機器手臂、及電眼;動作的基本法則包括前進、移動、倒退與轉彎。以繪圖的演算法為例,必須的基本要件有直線、圓形、方型;動作的基本法則有縮小、放大與旋轉。具備這些基本法則後,才能再組合出更高等的演算法。
  演算法的表示方式可以使用一般自然語言或電腦程式語言來表示。若以電腦程式語言撰寫,則演算法的基本要件稱之為指令組(Instruction Set),動作法則屬於資料型態(Data Type)。演算法以電腦程式撰寫後即成一般俗稱的程式或編碼化演算法(Coded Algorithm)。編碼化演算法的優點是對演算法細部規則的表達非常清楚,但不容易看清整個演算法的結構,常給人見樹不見林的感覺。相對的,以自然語言敘述的演算法,整體架構很清楚,但細節往往交待不清。折中的方式,是以電腦程式語言說明演算法的運作規則,以自然語言說明演算法的整體結構。這也是目前許多電腦教科書或電腦書籍,在說明某種演算法常採用的作法。
  電腦演算法的研究有以下幾個主題:(1)數學演算法(Mathematical Algorithms):研究如何利用電腦來執行整數、多項式或矩陣的運算法則 ,排序(Sorting),研究各種電腦資料檔案結構及如何執行檢索的方式;檢索(Searching),各種資料結構檢索效率與方法的研究 ;(2)字串處理演算法(String Processing Algorithm),研究各種電腦內字串的檢索與檔案壓縮與解壓縮的方法;(3)幾何學演算法(Geometric Algorithm),研究點、線與其他幾何圖型的問題解決方法;(4)圖形演算法(Graph Algorithm),用以探究各種圖形解題方法,如求最短距離、網路流量路徑等。其他相關的主題尚有動態規畫(Dynamic Programming),線性規畫(Liner Programming)與全面檢索(Exhaustic Searching)等演算法的研究。
資料來源: 國家教育研究院_演算法
授權資訊: 資料採「 創用CC-姓名標示- 禁止改作 臺灣3.0版授權條款」釋出
會員投稿&教育Wiki
教育Wiki
時間
版本內容
投稿者
2014年
教育Wiki

會員投稿
我要投稿連結圖示
您查詢的詞條還尚未有會員貢獻內容,若您有注音、釋義或圖片,歡迎透過會員上傳分享給教育百科, 我們將審查上架您貢獻的詞條,供其他使用者參閱。