1. カメラ
  2. カーオーディオ&エレクトロニクス
  3. ホームオーディオ
  4. パーソナルオーディオ
  5. テレビ
  6. スマートホーム
  >> 電子技術オンライン >  >> スマートホーム >> スマートライフ

検索アルゴリズムの種類

検索アルゴリズムは、多くのプログラムの重要な部分を形成します。一部の検索では、IRS データベースでレコードを検索するなど、データベースでエントリを検索する必要があります。他の検索アルゴリズムは、チェスの最高の動きを探すアルゴリズムなど、仮想空間を探索します。プログラマーは多数の検索タイプから選択できますが、ユーザー フレンドリーなエクスペリエンスを提供するために、データベースのサイズと構造に最適なアルゴリズムを選択します。

線形検索

線形検索は、単純で実装に必要なコードが最小限であるため、短いリストに最適なアルゴリズムです。線形検索アルゴリズムは、最初のリスト項目を調べて、それを検索しているかどうかを確認します。検索している場合は終了します。そうでない場合は、次の項目を調べて、リスト内の各エントリを調べます。

二分探索

二分探索は、数値キーで並べ替えられたレコードを持つ大規模なデータベースで一般的なアルゴリズムです。候補の例には、社会保障番号をキーとする IRS データベースや、運転免許証番号をキーとする DMV レコードが含まれます。アルゴリズムはデータベースの中央から開始します。ターゲット番号が中央の番号より大きい場合、検索はデータベースの上半分から続行されます。ターゲット番号が中央の番号よりも小さい場合、検索はデータベースの下半分から続行されます。レコードが見つかるまで、このプロセスを繰り返し続け、毎回データベースを半分にカットします。この検索は線形検索よりも複雑ですが、大規模なデータベースでは線形検索よりもはるかに高速です。

ツリー検索

ツリー検索は、データがツリー構造に収まる場合にのみ機能します。データベースは、いくつかの項目に移動するルートから始まり、それぞれがさらにいくつかの項目に移動し、ツリーができるまで続きます。その一例がチェスです。現在のボード位置はルートです。この位置からの正当な移動は、ツリーを 1 つ下ったことを表し、プレーヤーが自分を最適な位置に残すボード位置を見つけるまで同様に続きます。

遺伝的アルゴリズム

遺伝的アルゴリズム検索は、人工知能の背後にある技術の 1 つです。最大推力を提供するジェット エンジンの内部寸法のリストなど、一連のデータとして表現される「最適解」を検索します。検索は文字列のランダムな集団から始まり、それぞれをテストし、最良のものを保持し、それらを繁殖させて次の世代を取得します。プログラムは、最適なソリューション文字列に到達するまで、このプロセスを繰り返し続けます。