當前位置:首頁 » 操作系統 » 演算法分析的兩個主要方面

演算法分析的兩個主要方面

發布時間: 2023-06-03 19:33:12

A. 數據結構中評價演算法的兩個重要指標是什麼

數據結構中評價演算法的兩個重要指標是時間復雜度和空間復雜度。

同一問題可用不同演算法解決,而一個演算法的質量優劣將影響到演算法乃至程序的效率。演算法分析的目的在於選擇合適演算法和改進演算法。一個演算法的評價主要從時間復雜度和空間復雜度來考慮。

1、時間復雜度:

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

2、空間復雜度:

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

(1)演算法分析的兩個主要方面擴展閱讀:

評估演算法效率的方法:

1、事後統計方法

這種方法主要是通過設計好的測試程序和數據,利用計算機計時器對不同演算法編制的程序的運行時間進行比較,從而確定演算法效率的高低。

2、事前分析估算方法

在計算機程序編寫前,依據統計方法對演算法進行估算。經過總結,可以發現一個高級語言編寫的程序在計算機上運行時所消耗的時間取決於下列因素:演算法採用的策略、編譯產生的代碼質量、問題的輸入規模、機器執行指令的速度。

參考資料來源:網路-演算法

B. 數據結構(c語言

1.數據結構是一門研究非數值計算的程序設計問題中計算機的 A 以及它們之間的 _ B 和運算等的學科。
① A. 數據元素 B. 計算方法 C. 邏輯存儲 D. 數據映象
② A. 結構 B. 關系 C. 運算 D. 演算法
2.數據結構被形式地定義為(K,R),其中K是 B 的有限集,R是K上的 A 有限集。
① A. 演算法 B. 數據元素 C. 數據操作 D. 邏輯結構
② A. 操作 B. 映象 C. 存儲 D. 關系
3.在數據結構中,從邏輯上可以把數據結構分成____C____。
A. 動態結構和靜態結構 B. 緊湊結構和非緊湊結構
C. 線性結構和非線性結構 D. 內部結構和外部結構
4.演算法分析的目的是 C ,演算法分析的兩個主要方面是 A 。
① A. 找出數據結構的合理性 B. 研究演算法中的輸入和輸出的關系
C. 分析演算法的效率以求改進 D. 分析演算法的易懂性和文檔性
② A. 空間復雜度和時間復雜度 B. 正確性和簡單性
C. 可讀性和文檔性 D. 數據復雜性和程序復雜性
5.計算機演算法指的是 C ,它必須具備輸入、輸出和 C 等5個特性。
① A. 計算方法 B. 排序方法
C. 解決問題的有限運算序列 D. 調度方法
② A. 可執行性、可移植性和可擴充性
B. 可行性、確定性和有窮性
C. 確定性、有窮性和穩定性
D. 易讀性、穩定性和安全性

三、填空題
1.下面程序段的時間復雜度是___O(n*m)____。
For (i=0;i<n;i++)
For (j=0;j<m;j++)
A[i][j]=0;
2.下面程序段的時間復雜度是___O(n^(1/2))____。
i=s=0
While(s<n)
{
i++; /* i=i+1 */
s+=i; /* s=s+i */
}
3.下面程序段的時間復雜度是___O(n^2)____。
s=0;
for (i=0;i<n;i++)
for (j=0;j<n;j++)
s+=B[i][j];
sum=s;
4.下面程序段的時間復雜度是__O(log3 N)(註:對N取3的對數)_____。
i=1;
While (i<=n)
i=i*3;

C. 一個演算法的評價主要從哪些方面來考慮

一個演算法的評價主要從以下幾個方面來考慮:

1、時間復雜度

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

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

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

2、空間復雜度

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

3、正確性

演算法的正確性是評價一個演算法優劣的最重要的標准。

4、可讀性

演算法的可讀性是指一個演算法可供人們閱讀的容易程度。

5、健壯性

健壯性是指一個演算法對不合理數據輸入的反應能力和處理能力,也稱為容錯性。

(3)演算法分析的兩個主要方面擴展閱讀:

演算法可大致分為基本演算法、數據結構的演算法、數論與代數演算法、計算幾何的演算法、圖論的演算法、動態規劃以及數值分析、加密演算法、排序演算法、檢索演算法、隨機化演算法、並行演算法,厄米變形模型,隨機森林演算法。

演算法可以宏泛的分為三類:

一、有限的,確定性演算法 這類演算法在有限的一段時間內終止。他們可能要花很長時間來執行指定的任務,但仍將在一定的時間內終止。這類演算法得出的結果常取決於輸入值。

二、有限的,非確定演算法 這類演算法在有限的時間內終止。然而,對於一個(或一些)給定的數值,演算法的結果並不是唯一的或確定的。

三、無限的演算法 是那些由於沒有定義終止定義條件,或定義的條件無法由輸入的數據滿足而不終止運行的演算法。通常,無限演算法的產生是由於未能確定的定義終止條件。

熱點內容
手機如何選擇存儲 發布:2024-04-27 05:40:25 瀏覽:799
機架式伺服器怎麼操作 發布:2024-04-27 05:19:02 瀏覽:815
我的世界minez網易伺服器 發布:2024-04-27 05:09:26 瀏覽:384
易網頁源碼 發布:2024-04-27 04:51:06 瀏覽:864
攜程伺服器是什麼牌子 發布:2024-04-27 04:31:50 瀏覽:745
醫院新冠肺炎疫情防控演練腳本 發布:2024-04-27 04:04:45 瀏覽:652
天津智慧網關伺服器雲伺服器 發布:2024-04-27 03:56:51 瀏覽:422
移門製作下料尺寸演算法 發布:2024-04-27 03:15:02 瀏覽:641
c語言5常量 發布:2024-04-27 02:38:49 瀏覽:991
源碼怎麼搭建 發布:2024-04-27 02:33:44 瀏覽:97