私のコンピュータ科学の教授は、今日の大きなO表記について教え始めました。ここで彼は私たちを与えた例は以下のとおりです。JavaコードのBig-Oを決定する
:
次の大きなOとは何ですか。 4n2 + 2は、O(n^2)?
b。 n2 + 14n + 6は、O(n^2)?
c。 5n3 + 10n2-n-8は、O(n^3)?
d。 3n2 + 2nは、O(n^2)?
私はそれはプログラムが入力し、どのくらいそれが変化するその入力に応じて増加するであろうに基づいて実行するのにかかる時間の長さに関係していることを理解しています。私は、上記の問題の大きな問題を特定し、私が思ったものを入れておく方法を探しました。しかし、それはJavaコードの大きなOを決定することになると、私は失われています。誰かが私にこれらの問題の正しい方向を教えてもらえますか?
3. int count = 0;
for (int i = 1; i <= n; i++) {
i = n;
count += 1;
}
// end for
4. int total = 0;
for (int i = 1; i <= n; i++) {
for (int j = 1; j < i; j++) {
for (int k = 1; three < j; j++) {
total += 1;
} //end for } // end for } // end for
5. int total = 0;
for (int one = 1; one <= n; one++) {
for (int two = 1; two < n; two++) {
for (int three = 1; three < 10; three++) {
total += 1;
} //end for } // end for } // end for
6. int total = 0;
for (int pass = 1; pass <= n; pass*=2) {
total += 1;
}
// end for
7. p = n;
while (n>1) {
n = n/2;
while (p>0) {
p = p - 1;
}
// end while } // end while
8. for (int i = 1; i <= n; i+=2) {
j=1;
while(j < n) {
j = j + 2;
x = x + 2;
} // end while } // end for
https://rob-bell.net/2009/06/a-beginners-guide-to-big-o-notation/ –