2016-09-09 8 views
0

私はちょうどデータ構造の学習を始めましたが、配列挿入を行っているうちに、なぜO(n + 1)ではなく配列挿入O(n)の時間複雑さが疑問でしたか?なぜ配列挿入の時間複雑さはO(n)で、O(n + 1)ではないのですか?

挿入が最後の場所にある場合、時間の複雑さはO(1)です。私は要素がここに移動されないので、要素を挿入するために1を考えていると思います。 最悪の場合、n個の要素を移動して新しい要素を挿入する必要があることを考えると、時間の複雑さはO(n + 1)でなければなりませんか? 要素を移動するにはn、挿入するには1を入力します。

大変助かりました。ありがとうございます。

答えて

4

O(n)の関数もO(n + 1)であり、その逆もあります。下位の項は本質的に無視されるため、+1は何の意味もありません。

関連する問題