資結結束了,倒數十一篇~~~~
今天開始介紹演算法,簡單來說就是「解決一個問題的步驟」,但凡一套流程可以解決一件事,我們就可以稱之為演算法。
比如今天我們要解決「衣服很髒」這個問題,我們就可以透過以下的步驟:
透過這樣的步驟就可以得到乾淨衣服,這就是一個演算法,不過演算法一定有好有壞,比如選擇手洗一樣可以解決同個問題,但效率就會過低。(話說回來,洗衣機可以想像成資料結構,是不是稍稍可以想像前面提過的「程式設計 = 資料結構 + 演算法」)
所以我們學習演算法的目的就是知道前人發明了什麼演算法,來幫助我們解決問題,說不定之後也可以從中去發明更好的演算法。
在接下來的文章中,我會先教怎麼去評估一個演算法的效率好壞,然後會教幾個排序、搜尋的演算法,可能還會有數學相關的東西,就讓我們繼續看下去吧。