バイナリ検索の仕組みはわかっていますが、バイナリ検索の実用的な使い方を知りたかったのです... インターネットで検索したところ、主な用途はデータベースのインデックス作成でしたバイナリ検索がデータベースの索引付けにどのように役立つか理解できませんでした。バイナリ検索がデータベースインデックス作成でどのように使用されるのですか
答えて
ソートされたリストがある場合は、バイナリ検索を使用して効率的にリストを検索できます。データベースインデックスは、ソートされたデータのデータ構造です。
Binary searchを使用すると、キーがすでにソートされていることを前提に、そのキーでレコードをすばやく検索できます。これは、キーの数が多い場合に特に当てはまります。 32のキーの読み取りは、20億のソートされたキーのコレクション内の単一の一意のキーを見つけるには十分です。
バイナリ検索は、各検索の試行で検索するレコードの数が半減するため、この方法で動作します。言い換えれば、データベースは、通常、b-treesまたはred-black treesのような他のbinary treeのようなデータ構造を使用してインデックスを実行します。バイナリツリーを使用すると、検索する前にキーのリストをソートする必要がなくなります。
私が解決策を探している間、非常に便利なリンクとあなたの質問に対する答えが見つかりました。
[リンクのみの回答はお勧めできません](http://meta.stackoverflow.com/tags/link-only-answers/info)、SOの回答は解決策の検索の終点になるはずです(対時間の経過とともに古くなる傾向がある参照の途中降機)。リンクを参考にして、ここにスタンドアロンの概要を追加することを検討してください。 – kleopatra
上記のリンクには、クエリーに関する非常に詳細な説明があります。将来の記事でより良い説明を提供することを確認します。ありがとう。 –
バイナリ検索では、各ステップの次の位置(中点)が計算されます。
DBのバイナリツリー事前計算各ステップ上の中点、単一の項目に達するまで。すべての中間点をツリーに配置します。クエリを実行すると、DBMSはツリーをルックアップします。
- 1. Clojureでどのようにバイナリ検索ツリーを作成しますか?
- 2. 作成バイナリ検索ツリー
- 3. Recursivleyバイナリ検索ツリーが完成したかどうかのテスト
- 4. コアのPythonでバイナリ検索アルゴリズムが使用されていますか?
- 5. バイナリ検索ツリーを作成すると例外がスローされる
- 6. フィルターを使用して検索エンジンを作成するにはどうすればよいですか?
- 7. iPhoneアプリでSpotlightのような検索バーを作成するにはどうすればよいですか?
- 8. 最小の深さのバイナリ検索ツリーの作成
- 9. drupal 5で分類用語とキーワード検索を使用して検索ブロックを作成するにはどうすればよいですか?
- 10. バイナリ検索が
- 11. いくつかのオカレンスのバイナリ検索を実行するにはどうすればよいですか?
- 12. ビューを作成してウェブサイトの検索エンジンを活用するにはどうすればよいですか?
- 13. ゴールデンセクション検索はバイナリ検索より優れていますか?
- 14. 高速検索用のインデックスファイルはどのようにして作成されますか?
- 15. バイナリでのパターン検索
- 16. ソートされた整数配列が与えられた場合、バイナリ検索ツリーはどのようにそれから形成できますか?
- 17. C++バイナリ検索ツリーでセグメント化エラーが削除されます
- 18. 弾性検索ソートスクリプトは0.2で動作するように使用さ
- 19. 検索エンジンでSilverlightアプリケーションのインデックスを作成するにはどうすればよいですか?
- 20. IList <T>でバイナリ検索を実行するにはどうすればよいですか?
- 21. 検索エンジンにサイトの検索結果を表示させるにはどうすればよいですか?
- 22. 分散バイナリ検索ツリー(BST)のバランスをとるにはどうすればよいですか?
- 23. リニア検索とバイナリ検索の違いは何ですか?
- 24. シンプルなユーザーエージェント検索のためのセールスフォーステストクラスを作成するにはどうすればよいですか?
- 25. Vimで検索するカスタムコマンドを作成するにはどうすればよいですか?
- 26. attr_accessorを使用するように検索するにはどうすればよいですか?
- 27. Lispのバイナリ検索ツリーからどのように削除するのですか
- 28. どのように再帰バイナリ検索アルゴリズムを実装するには?
- 29. どのようにマップ内の検索でrewritecondを使用しますか
- 30. より正確な検索を作成するにはどうすればよいですか?
データベースインデックスは、バイナリツリーの一般化であるb-ツリーを使用します。両方の場合に「分割と征服」という一般的な考え方が適用されますが、バイナリ検索と同じではありません。 – dasblinkenlight