[數據結構] 時間複雜度計算

1. 算法的特性算法

輸入(Input)函數

一個算法有0個或多個輸入,以刻畫運算對象的初始狀況,所謂0個輸入是指算法自己定出了初始條件;對象

輸出(Output)it

一個算法有一個或多個輸出,以反映對輸入數據加工後的結果。沒有輸出的算法是毫無心義的。能夠在控制檯打印輸出或者返回一個或多個值等。循環

肯定性(Definiteness)方法

算法中的每一步驟必須有確切的含義,不能產生多義性:數據

可行性(Effectiveness)時間

算法中的每一步驟必須是切實可執行的,即原則上能夠經過已經實現的基本運算執行有限次來實現(也稱之爲有效性);

有窮性(Finiteness)

算法在執行有限的步驟後自動結束,不會出現無限循環,而且每個步驟在可接受的時間內完成。意思是當一個算法執行個 三五十年才結束,人都等的掛到牆上了,這樣的算法也沒有實際意義。

2. 推導大O階方法

1)、用常數1取代運行時間中的全部加法常數

2)、在修改後的運行次數函數中,只保留最高階項

3)、若是最高階存在且不是1,則去除與這個項相乘的常數。

相關文章
相關標籤/搜索