私はピボットが3つの数字、ボトム、ミドル、およびトップの中央値になることを読んだ。しかし、それはオーバーフローを生成する可能性がありますか?中央値が配列のサイズより大きな値を返すとどうなりますか? この選択肢は、配列の値が配列のサイズよりも長くなることができないと仮定していると仮定します。 私はピボットが本当に何であるか混乱していると思います。クイックソートピボットの選択
1
A
答えて
3
ピボットは他の値と比較する値にすぎません。低い値は左に、右に行くほど高くなります。ピボットは、配列内の既存の値のいずれかを取ることによって選択できます。配列が完全にソートされていない場合は、どの値を選択するかは関係ありません。多少ソートされている場合は、配列の中央から値を選択する必要があります。
更新:より良いピボットの選択肢は、配列の3つの値の中央値(中、下、上、または3つのランダムな位置など)を選択することです。一部の人々は5値の中央値を取ることを提唱している。クイックソートの最悪の場合のパフォーマンスは、ピボットがアレイ内の最小値または最大値に近い場合に発生し、この方法は発生したことに対して防御することを意図しています。これは特定の種類のデータの最適化に過ぎません。必要ではありません。
関連する問題
- 1. Javaクイックソートピボット選択
- 2. Pythonでクイックソートピボット選択を改善するにはどうすればよいですか?
- 3. 選択リストのjquery選択
- 4. 選択オプションの選択複数選択オプションのデータ属性
- 5. IONICイオンの選択は「選択」私のイオンアプリで選択
- 6. 選択非表示の選択ボックスと選択ボックスオプションを選択に基づいて選択します。
- 7. 選択した次の選択を選択
- 8. 選択2複数選択デフォルトの選択
- 9. Flutter RaisedButtonの選択状態の選択
- 10. ブートストラップマルチ選択のアイテムの選択色
- 11. Unityのゲームオブジェクトの選択と選択
- 12. 選択選択セルが
- 13. インタラクション選択イベントを選択
- 14. JPA(選択)から選択
- 15. ブートストラップドロップダウン選択時に選択
- 16. 角度選択のマルチ選択ドロップ
- 17. g:grailsのデータベース選択保存選択
- 18. ジェイドパグは、[選択]ボックスの選択
- 19. Instagramフックメディア選択の事前選択
- 20. Intellij ideavim選択への選択
- 21. ASP.NET MVC選択リストの選択値
- 22. リスト選択デフォルトの複数選択
- 23. テーブルビューセルの選択と選択解除
- 24. vbnet選択dtへの選択
- 25. 選択入力の選択解除
- 26. Djangoの選択肢非選択フィールド
- 27. UITableViewの選択と選択解除
- 28. jQueryの選択と非選択画像
- 29. Jquery:選択範囲内の選択
- 30. Struts複数選択ボックスの選択
私は、あなたが配列の番号の*インデックス*を見つける必要があることを意味すると思います。これは、中央、最下部の中央値に最も近いものです。配列インデックスとして中央値を取るべきではありません。 –