答えて
最も内側のループは明らかにj
回実行されます。それは1時間単位の価値の操作が含まれていると仮定すると、これは以下のようになります。
T_inner(j) = j
真ん中のループ、すなわちi
回、
T_middle(i) = Sum {j from 1 to i} T_inner(j)
= Sum {j from 1 to i} j
= i/2 * (1 + i)
最後に
実行されます:
T_outer(n) = Sum {i from 1 to n} T_middle(i)
= Sum {i from 1 to n} (i/2 * (1 + i))
= 1/6 * n * (1 + n) * (2 + n)
= 1/6 n^3 + 1/2 n^2 + 1/3 n
とし、これは明らかですO(n^3)
。
注:これは、最も内側のブロックの演算のみをカウントします。ループを実行するのに必要な操作は無視されます。しかし、それらを含めると、時間の複雑さは同じであることがわかります。
ありがとう! @NicoSchertler、それは動作します:) –
通常、アルゴリズムの複雑さが話題になると、彼らはループに必要な操作を考慮しますか、それとも常に無視されますか? –
ループを維持するために必要な操作は、反復回数(初期化操作に加えて)に常に比例します。したがって、これは内側のブロックに一定量を加えることに似ています。結局のところ、これは複雑さを変えない。 –
- 1. 与えられた関数の最悪の時間の複雑さは何ですか?
- 2. 与えられたコードの時間複雑さを理解する
- 3. 与えられた関数の時間複雑さを求める
- 4. Pythonでのdict.keys()の時間の複雑さは何ですか?
- 5. 私のコードの時間の複雑さは何ですか?
- 6. 次のプログラムの時間の複雑さは何ですか?
- 7. 私のコードの時間の複雑さは何ですか
- 8. このアルゴリズムの時間の複雑さは何ですか
- 9. C:qsort関数の時間の複雑さは何ですか?
- 10. HTML DOMルックアップの時間の複雑さは何ですか
- 11. int( '1010'、2)の時間の複雑さは何ですか?
- 12. list.index(obj)メソッドの時間の複雑さは何ですか?
- 13. 与えられた時間の複雑さでアルゴリズムを作成してください
- 14. 次のスニペットO(n^2)の時間複雑さはありますか?
- 15. パスカル・トライアングル・アルゴリズムの時間複雑さは何ですか?
- 16. Linq OrderBy()の時間複雑さは何ですか?ThenBy()メソッドシーケンス?
- 17. 与えられたコードの複雑さを見つける
- 18. 時間の複雑さは
- 19. 隣接リストの表現が与えられたときにユニバーサルシンクを見つけるための時間の複雑さは何ですか
- 20. 配列[:: - 1]の複雑さと空間の複雑さは何ですか
- 21. 時間の複雑さと
- 22. 与えられた時間から分を引く方法は?
- 23. スキーム内の 'assoc'関数の時間の複雑さは何ですか?
- 24. heapqライブラリの関数の時間の複雑さは何ですか
- 25. zaddのredisでの時間複雑さ
- 26. 時間の複雑さ(入れ子にされたループ)
- 27. 時間の複雑さと空間の複雑さ、空間の複雑さの計算方法
- 28. ヒープをヒープ化する時間の複雑さは何ですか
- 29. JavaScriptオブジェクトキーを検索する時間の複雑さは何ですか?
- 30. ループ内のPythonソートされたメソッドの時間の複雑さ
あなたはこの問題に対して何をしましたか?たとえば、 'j'の複雑さと正確な公式を述べることができますか?複雑さを明白にする 'k'の正確な公式については、[四面体数](https://en.wikipedia.org/wiki/Tetrahedral_number)を参照してください。 –
n^3のように見えます。私は時間の複雑さにかなり悪いですが、私は間違っている可能性があります。また、これらのタグのほとんどは無関係です。 – byxor
提案通りにタグを削除しました。 @BrandonIbbotson –