ㄧ、什麼是演算法?
演算法其實無所不在,簡單來說,演算法是一個幫助我們解決問題的流程。譬如說今天機車動不了,我們想要解決這個問題,所以我們整理出了一套流程,機車動不了,是不是沒電了,是的話,更換電瓶;不是的話,再檢查是不是引擎壞了,是的話,更換引擎,不是的話,送回原廠修理,最終,機車又可以發動了。像這樣思考的觀念就稱為演算法的思維,將要解決的問題流程化。
二、演算法的特徵
我們所討論的演算法大多是使用在程式語言上的演算法,一個演算法必須存在以下五個特徵
- 輸入:一個演算法必須有0個以上的輸入
- 有限性:一個演算法的步驟是有限的
- 明確性:演算法執行的每個步驟必須是明確的
- 有效性:必須確保演算法執行可以獲得正確的結果
- 輸出:一個演算法必須有1個以上的輸出結果
所以簡單來說演算法就是輸入->演算法->輸出
有趣的小知識:世界上公認第一個演算法是在公元前325年寫在幾何原本裡的歐幾里德演算法,就是我們熟悉的輾轉相除法,是不是很酷!