Algorithm

---

Introduce

image-20210329184907254

What is Algorithm?

---算法是求解問題的步驟---算法

image-20210329185033475

算法的特性

  • 有窮性:一個算法必須在有窮步後結束,每一步必須在有窮時間內完成ide

    ---算法有窮而程序無窮---對象

  • 肯定性:每條指令不能有歧義,即不管運行多少次,相同的輸入總能獲得相同的輸出blog

  • 可行性:算法中描述的操做均可以經過已經實現的基本運算執行有限次實現數學

  • 輸入it

  • 輸出class

    ---回到上面的例子---效率

    step3中,因爲並無規定年齡相同的對象間的排列順序,致使算法的肯定性遭到破壞,所以,嚴格意義上其並非一個算法程序

再看一個簡單的類比,對於數學式 :
$$
y=f(x)
$$
其中:x其實就是輸入,y則表示輸出,而f()就是一個算法im

一個好的算法應該具有哪些特性?

  • 正確性
  • 可讀性
  • 健壯性:面對非法數據仍然具備反應和處理能力
  • 高效率與低存儲要求:高效率對應時間複雜度低,低存儲對應空間複雜度

知識回顧

image-20210329221441105