【演算法】 Algorithm
【辭書名稱】教育大辭書
演算法的英文原義是由九世紀波斯的數學家Mohammedal-Khowãrizmî的名字演變而來,以拉丁文表示則為Algorismus,他提供了十進位加、減、乘、除的運算法則。
而最早出現的演算法可以追溯到西元前三百五十年左右,希臘數學家歐幾里德(Euclid)所發現求二個正整數最大公約數的演算過程。
一般演算法的定義是指特定問題的特定解法。
如煮菜時依食譜所定的步驟及說明烹調,則食譜中所載的步驟說明即是一種演算法,藉著它可以解決特定的問題(得到佳餚)。
又如教小孩折紙,折紙皆有特定的步驟,這些步驟也可以稱為演算法。
一九五○年代後,電腦科技的興起,演算法中有了新的涵意:能在有限的時間內完成明確界定的演算過程。
到了一九七○年代,幾乎電腦的各個領域,由基本理論到電腦的應用均普遍採用演算法,並且自成體系,成為電腦科學的一個重要領域。
它是電腦用以解決問題的思考工具,如程式設計解題時,須先以演算法設計解題的步驟,而後才將這些步驟以某一種程式語言的語法轉化為程式。
所以,在電腦科學領域所定義的演算法,必須:1.以有限個步驟描述。
2.各步驟均可在電腦上完成。
3.步驟間的流程明確。
4.經過有限次的步驟執行後會終止。
演算法的描述,早期使用流程圖或虛擬的演算法語言(如Algol),目前則演變到採用近似Pascal的語言,或者以自然語言(如中文或英文)描述,使用的描述語言除須能明確表達演算法之邏輯關係外,更應力求簡單易懂。
演算法的設計與分析之所以重要,係因其累積了前人數十年的設計經驗,它不但可以使電腦更有效率的執行工作,也提供分析問題的基本工具。
轉自:http://edic.nict.gov.tw/cgi-bin/tudic/gsweb.cgi?o=ddictionary
|