如何理解演算法中的漸進符號

  • 作者:由 匿名使用者 發表于 動漫
  • 2022-09-09

如何理解演算法中的漸進符號飄飛的葉子2017.09.14 回答

演算法是在有限步驟內求解某一問題所使用的一組定義明確的規則。通俗點說,就是計算機解題的過程。在這個過程中,無論是形成解題思路還是編寫程式,都是在實施某種演算法。前者是推理實現的演算法,後者是操作實現的演算法。

一個演算法應該具有以下五個重要的特徵:

1、有窮性: 一個演算法必須保證執行有限步之後結束;

2、確切性: 演算法的每一步驟必須有確切的定義;

3、輸入:一個演算法有0個或多個輸入,以刻畫運算物件的初始情況,所謂0個輸入是指演算法本身定除了初始條件;

4、輸出:一個演算法有一個或多個輸出,以反映對輸入資料加工後的結果。沒有輸出的演算法是毫無意義的;

5、可行性: 演算法原則上能夠精確地執行,而且人們用筆和紙做有限次運算後即可完成。

如何理解演算法中的漸進符號聽你說!2017.09.14 回答

大O就是時間複雜度。時間複雜度是大概的描述一個演算法的用時(實際上從側面的表達了他的效率)你可以把它看成函式y=f(x)一樣。O(n)中的n代表規模大小,這也表明了,時間複雜度跟規模的關係。最好時間複雜度,通常指在最好情形下,這個演算法用時。反之,最壞情況下的就是最壞時間複雜度。通常冒泡演算法的最壞時間複雜度就是O(2^n),最壞情形是原序列跟排序後的序列完全相反。

Top