導航:首頁 > 源碼編譯 > 演算法最根本的評價標准

演算法最根本的評價標准

發布時間:2024-11-15 07:45:33

『壹』 演算法的評價指標有哪些

時間復雜度和空間復雜度。

1、時間復雜度

演算法的時間復雜度是指執行演算法所需要的計算工作量。一般來說,計算機演算法是問題規模n 的函數f(n),演算法的時間復雜度也因此記做。

T(n)=Ο(f(n))

因此,問題的規模n 越大,演算法執行的時間的增長率與f(n) 的增長率正相關,稱作漸進時間復雜度(Asymptotic Time Complexity)。

2、空間復雜度

演算法的空間復雜度是指演算法需要消耗的內存空間。其計算和表示方法與時間復雜度類似,一般都用復雜度的漸近性來表示。同時間復雜度相比,空間復雜度的分析要簡單得多。

空間復雜度記做S(n)=O(f(n))。比如直接插入排序的時間復雜度是O(n^2),空間復雜度是O(1) 。而一般的遞歸演算法就要有O(n)的空間復雜度了,因為每次遞歸都要存儲返回信息。一個演算法的優劣主要從演算法的執行時間和所需要佔用的存儲空間兩個方面衡量。

(1)演算法最根本的評價標准擴展閱讀:

演算法的方法:

1、遞推法

遞推是序列計算機中的一種常用演算法。它是按照一定的規律來計算序列中的每個項,通常是通過計算機前面的一些項來得出序列中的指定項的值。其思想是把一個復雜的龐大的計算過程轉化為簡單過程的多次重復,該演算法利用了計算機速度快和不知疲倦的機器特點。

2、遞歸法

程序調用自身的編程技巧稱為遞歸(recursion)。一個過程或函數在其定義或說明中有直接或間接調用自身的一種方法,它通常把一個大型復雜的問題層層轉化為一個與原問題相似的規模較小的問題來求解,遞歸策略只需少量的程序就可描述出解題過程所需要的多次重復計算,大大地減少了程序的代碼量。遞歸的能力在於用有限的語句來定義對象的無限集合。

一般來說,遞歸需要有邊界條件、遞歸前進段和遞歸返回段。當邊界條件不滿足時,遞歸前進;當邊界條件滿足時,遞歸返回。

注意:

(1) 遞歸就是在過程或函數里調用自身.

(2) 在使用遞歸策略時,必須有一個明確的遞歸結束條件,稱為遞歸出口。

與演算法最根本的評價標准相關的資料

熱點內容
python怎麼運行圖表 瀏覽:999
android判斷瀏覽器 瀏覽:239
51單片機與藍牙模塊 瀏覽:489
ipad卸載未使用的app怎麼取消 瀏覽:52
大學的系統用的都是什麼伺服器 瀏覽:386
元素動態鈴聲在哪個文件夾 瀏覽:987
app上面的逗號怎麼取消 瀏覽:499
安卓手機如何下游戲不用密碼 瀏覽:931
外貿怎麼下載app 瀏覽:568
程序員回家種核桃 瀏覽:954
編譯器為數組開辟的內存空間是 瀏覽:907
程序員最深刻的印像 瀏覽:859
軟體閃退怎麼辦安卓44 瀏覽:772
手機解壓目標文件夾 瀏覽:715
安卓手機太燙怎麼打開游戲 瀏覽:342
兩個伺服器如何做熱備 瀏覽:23
什麼企業需要代碼程序員 瀏覽:499
編譯程序未找到是什麼意思 瀏覽:560
程序員的碎碎念 瀏覽:946
永恆世界伺服器地址下載 瀏覽:277