計算模型

算法的四個標準:

  • 正確性
  • 健壯性:輸入非法數據,算法也能適當地做出反應後進行處理,不會產生預料不到的運行結果。
  • 可讀性:易於閱讀、理解和交流,便於調試、修改和擴充。
  • 時空性(效率):算法的時空性是該算法的時間性能和空間性能。 主要是說算法在執行過程中的時間長短和空間佔用多少問題。算法處理數據過程中,不同的算法耗費的時間和內存空間是不同的。

圖靈機模型、RAM等模型爲度量算法性能提供了準確的尺度。

TM:Turing Machine  圖靈機模型

組件:

  • Tape(無限的帶):依次均勻的劃分別單元格(cell)各注有某一字符,默認“#”
  • Alphabet(有限的字符表)
  • Head:總是對準某一單元格,並可讀取和改寫其中的字符,沒經過一個節拍,可左轉或右轉。
  • State:TM總是處於有限狀態中的一種,每經過一種節拍,可(按照規則)左轉或右轉。

例:Transition Function(q,c;d,L/R,p)

        q:當前狀態

         c:當前字符

         d:修改爲字符d

         L/R:轉向左或右

         p:轉爲p狀態

RAM:Randon Acccess Machine

1.寄存器順序編號,總數沒有限制

          R[0] ,R[1],R[2],R[3]。。。。。。。。。。。

2.每一基本操作僅需要常數時間(循環及子程序本身非基本操作

         賦值,加,減,簡單判斷,Stop

比較

以上兩種模型都是一般計算工具的簡化和抽象,使我們可以獨立於具體的平臺對算法的效率做出可信的比較與評判

依據

將算法的運行時間轉換問題轉換爲算法需要執行的基本操作次數

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章