1. 如何計算一個演算法的時間復雜度
求解演算法的時間復雜度的具體步驟是:
1、找出演算法中的基本語句:
演算法中執行次數最多的那條語句就是基本語句,通常是最內層循環的循環體。
2、計算基本語句的執行次數的數量級:
(1)只需計算基本語句執行次數的數量級,這就意味著只要保證基本語句執行次數的函數中的最高次冪正確即可,可以忽略所有低次冪和最高次冪的系數。
(2)這樣能夠簡化演算法分析,並且使注意力集中在最重要的一點上:增長率。
3、用大Ο記號表示演算法的時間性能:
(1)將基本語句執行次數的數量級放入大Ο記號中。
(2)如果演算法中包含嵌套的循環,則基本語句通常是最內層的循環體,如果演算法中包含並列的循環,則將並列循環的時間復雜度相加。例如:
for(i=1;i<=n;i++)x++;for(i=1;i<=n;i++)
for(j=1;j<=n;j++)x++;
(3)第一個for循環的時間復雜度為Ο(n),第二個for循環的時間復雜度為Ο(n2),則整個演算法的時間復雜度為Ο(n+n2)=Ο(n2)。