扎古科普:簡說算法是什麼?

最近有位童鞋有聊到算法是什麼?小編作為一個科普達人,秉著複雜問題簡單化,簡單地說說:


提問者:老扎古,我最近遇到算法的職位,有點搞不懂算法,算法工程化,算法等等巴拉巴拉等等的問題了,你能給我梳理下嗎?


老扎古:嗯 算法是什麼呢?


這是度孃的說法:

算法(Algorithm)是指解題方案的準確而完整的描述,是一系列解決問題的清晰指令,算法代表著用系統的方法描述解決問題的策略機制。也就是說,能夠對一定規範的輸入,在有限時間內獲得所要求的輸出。如果一個算法有缺陷,或不適合於某個問題,執行這個算法將不會解決這個問題。不同的算法可能用不同的時間、空間或效率來完成同樣的任務。一個算法的優劣可以用空間複雜度與時間複雜度來衡量。

算法中的指令描述的是一個計算,當其運行時能從一個初始狀態和(可能為空的)初始輸入開始,經過一系列有限而清晰定義的狀態,最終產生輸出並停止於一個終態。一個狀態到另一個狀態的轉移不一定是確定的。隨機化算法在內的一些算法,包含了一些隨機輸入。


提問者:額額額,我頭好昏,聽不懂呢,我不想了解理論,就想怎麼容易理解


旁白:看懂了嘛?作為非本領域的小編看著雲裡霧裡,這是什麼鬼,(從業算法的技術朋友們勿噴哈,)

扎古科普:簡說算法是什麼?


老扎古:簡單來說算法可以理解為一種解決問題的方案及步驟,我舉個例子,例如做回鍋肉有很多種做法,有川香回鍋肉,清炒回鍋肉,濃油醬汁回鍋肉等等(不能再發散了,我們是一個嚴謹的科技公眾號非美食方案)


關於算法工程化

算法工程化即通過開發語言把算法以軟件的形式展現出來,實現出來

回到回鍋肉這個話題,算法工程化的過程就是按照食譜把回鍋肉炒出來,

一個合格的廚師 呸呸,錯了,一個合格的算法工程師(我們按照目前主流大廠的要求)必須要既要既要懂菜譜會研究新菜也要能夠動手把菜炒出來, 你懂了嗎?


提問者:哦哦,原來如此,老扎古你真是好廚子,

扎古科普:簡說算法是什麼?


老扎古:額


扎古科普:簡說算法是什麼?


分享到:


相關文章: