【算法時間複雜度的定義】算法
在進行算法分析時,語句總的執行次數T(n)是關於問題規模n的函數,進而分析T(n)隨n的變化狀況並肯定T(n)的數量級。算法的時間複雜度,也就是算法的時間量度,記做:T(n) = O(f(n))。它表示隨問題規模n的增大,算法執行時間的增加率和f(n)的增加率相同,稱做算法的漸近時間複雜度,簡稱爲時間複雜度。其中f(n)是問題規模n的某個函數。函數
即:執行次數=時間spa
【如何分析一個算法的時間複雜度?即:如何推到大O階呢?】blog
-用常數1取代運行時間中的全部加法常數ip
-在修改後的運行次數函數中,只保留最高階項get
-若是最高階項存在,且不是1,則去除與這個相乘的常數it
-獲得的最後的結果就是大O階cli
【常見的時間複雜度】im
【經常使用的時間複雜度所耗費的時間從小到大依次是】d3
【最壞狀況與平均狀況】
【算法的空間複雜度】