2017-07-18 5 views
-1

私はBig-O表記を理解しようとしています。今日早く、私は練習する機能を与えられ、O(n^5)があると言いました。私自身で計算しようとしましたが、T(n)を正しく計算したかどうかはわかりません。ここで ネストされたループを持つ関数の理論的な実行時間を理解する

は私の二つの質問です:

1)私が正しく、その後、私が間違って何をやったのではない場合T(n)を計算しましたか?

2)私たちはなぜ変圧器をもって最高のパワーにしか関心がないのですか?

1 sum = 0;       //1     = 1 
2 for(i=0; i < n; i++)   //1 + n + 2(n-1) = 1+n+2n-2   = 3n-1 
3  for (j=0; j < i*i; j++)   //n + n*n + 2n(n-1))= n+ n^2 + 2n^2-2n = 3n^2 -n 
4  for (k=0; k < j; k++)   //n + n*n + 4n(n-1))= n + n*n +4n*n-4n = 5n^2 -3n 
5   sum++; 
6   k++; 
7  j++; 
8 i++; 
// so now that I have simplified everything I multiplied the equations on lines 2-4 and added line 1 
// T(n) = 1 + (3n-1)(3n^2-n)(5n^2 -3n) = 45n^5 -57n^4 +23n^3 -3n^2 + 1 

答えて

1

最も内側のループは、j回実行されます。 秒ループはj = 0 to i^2 - >整数の合計で実行されます。 外部ループは、n - > 2乗の和と4乗の整数に実行されます。

enter image description here

nが無限大に近づくにつれて、最高nのパワー(または順序)は、常に関係なく、その係数の、支配するので、私たちは最高の電力のみを取ります。

関連する問題