mid = high-2(mid =(low + high)/ midの代わりにmid = high-2として分割点を計算するバイナリ検索の時間複雑さを調べる必要があります。 2) 修正アルゴリズムがどれほど遅いか速いかを知るためmid-high-2を計算する修正バイナリ検索の時間複雑度
1
A
答えて
2
最悪の場合は、検索された項目が最初のものです。この場合、常にnから2を引くので、線形の複雑さは約n/2ステップになります。最良の場合は、検索されたアイテムが正確にn-2であり、これは一定の複雑さを要することである。 n - >無限大が線形であると仮定した場合の平均複雑度。
1
ヒント:バイナリ検索の漸化式に基づいて答えを導き出すことができます。
我々は二つの等しいhalfsに分割するので、我々は床(N/2)を有するT(N)= T(床(N/2))+ O(1)
を有します。変更したバージョンを記述するために、指定した数式を書き直す必要があります。さらに、Akra-Bazziメソッドを使用して、2つのアンバランスな半分に分割するので、修正されたバージョンの再帰式を解決する必要があります。
+0
ありがとう、大きな助け –
関連する問題
- 1. バイナリ検索の時間の複雑さ?
- 2. 時間複雑度を計算する
- 3. アルファベータ検索時間の複雑度
- 4. Distinct Subsequencesの時間複雑度を計算する
- 5. 未分類配列のバイナリ検索の時間の複雑さ
- 6. レコードを検索するための時間複雑度?
- 7. ファイル修正の時間の複雑さ?
- 8. 計算時間の複雑さ
- 9. バンカーのアルゴリズム計算時間の複雑度
- 10. モジュラー算術の時間複雑度
- 11. 時間複雑度3の合計
- 12. キャニーエッジ検出器の時間複雑度
- 13. 双方向検索の時間複雑度
- 14. O(logN)のHashMapを使用するノードのリンクリストのバイナリ検索時間複雑度
- 15. 私のC関数の時間複雑度を計算する方法
- 16. アルゴリズムの時間複雑度を大きなオハイ表記で計算する
- 17. 再帰関数の時間複雑度を計算するには?
- 18. C++バイナリ検索ツリーの印刷と深度の計算
- 19. アルゴリズム時間の複雑さを計算する方法
- 20. ソートを計算する時間の複雑さ
- 21. 時間の複雑さを計算するには?
- 22. 時間の複雑さと空間の複雑さ、空間の複雑さの計算方法
- 23. プログラムの時間複雑度
- 24. フィボナッチアルゴリズムの時間複雑度
- 25. デデューピングアルゴリズムの時間複雑度
- 26. プログラムの時間複雑度
- 27. クイックセレクト時間の複雑度
- 28. random.sampleの時間複雑度
- 29. 時間の合計複雑度の合計
- 30. 検索/方法の複雑さを計算
ありがとうございました! –