演算法的特性及時空複雜度

2021-10-10 22:30:02 字數 580 閱讀 5036

有限性 :完成步驟有限,不能形成無窮迴圈

確定性 :演算法的每一步驟都必須有確定含義,無二異性得以實現

輸入 : 有多個或0個輸入

至少有乙個或者多個輸出

可行性 : 原則上精確進行,操作可以通過已實現基本運算執行有限次而完成

1. 不含有語法錯誤

2. 對於幾組資料可以得出滿意的結果

3. 程式對於精心挑選的典型。苛刻而又刁難性的幾組資料得出滿意的結果[^1]

4. 對一切資料均可以得出滿意結果

[^1]: 在演算法競賽中,往往會因為不滿足邊界條件而不斷修正程式,或者因為時空複雜度不滿足而不斷修正程式

私以為:體現程式執行語句的次數與n的關係的量

1. 常量階 : 程式執行次數與n無關, f(n) = c --> o(1)

2. 線性階 : 程式執行次數與n有線性關係 f(n)= kn --> o(n)

3. 平方階

4. 對數型

5. 二維型

它也是問題規模n的函式

就這樣吧

演算法時空複雜度分析

目錄 1.時間複雜度 2.空間複雜度 3.常見的演算法複雜度 4.相關典型例題 5.總結 在acm範圍裡,我們只需了解時間複雜度可以大致地通過乙個演算法運算的次數來描述程式執行的效率,常常用大寫字母o來表示。在表示時間複雜度的時候,只保留數量級最大的一項,並忽略係數。對於給定的常數n 若某乙個演算法...

時 空間複雜度

演算法中的基本操作的執行次數,稱為演算法的時間複雜度 我們計算時間複雜度,並不一定要計算所有執行次數,而是擇其大概次數就行了。即漸進計數。漸進計數就是說 1 已知常數次記為o 1 2 忽略 係數 即2n次 記為o n 3 大資料下忽略小資料 即 n 2 2n 1 記為o n 2 時間複雜度 也有最好...

時空複雜度的理解

1.演算法效率的度量 演算法執行的時間需通過依據該演算法編制程式在計算機上執行時所消耗的時間來度量。而度量乙個程式執行時間通常有兩種方法。1 事後統計法 因為計算機內部都有計時功能,有的甚至精確到毫秒級,不同演算法的程式可通過一組或若干組相同的統計資料以辨別優劣。但這種方法有兩個缺陷 一是必須先執行...