3

コード:

            int c = 0;
            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    c = i * j;
                }
            }

時間の複雑さ: O(n 2 )

次のコードの複雑さはどうなりますか。

            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    //c = i * j;
                    // nothing is happening inside the loop
                }
            }

複雑さは上記( O(n 2 ) )と同じになるか、それとも他の何か??

4

2 に答える 2

7

i理論的には - はい。まだ発生する必要があるandjを増やし、各反復でそれらを最終値と比較するという問題がまだあるからです。

ただし、コンパイラは一定の時間で実行されるように最適化し、 と の post 値を設定するだけiですj

于 2012-11-30T09:54:42.820 に答える
1

両方の複雑さは O(N^2) です。

于 2012-11-30T12:31:26.757 に答える