IT辞書

リニアサーチ[linear search]

 

・検索の方法の名前 ・「線形探索法」とも呼ばれる ・データを端から順番に見つかるまで一つ一つ調べていく探索法 ・プログラムは単純で実装しやすい ・バイナリサーチなどと比べ配列が長くなると処理速度が遅い

 

データ探索アルゴリズムの一つ、配列などに格納されたデータの先頭から末尾まで順番に、目的のデータと一致するか比較していく手法 バイナリサーチなどと比べると探索対象の配列が長くなるほど目的のデータを見つけるまで端から一つ一つ評価する必要があるため処理に時間がかかってしまう プログラムは単純で実装しやすいがバッチ処理などデータ量の配列からデータを取得するには向かない

 

linear_search_image

 

・Pythonコード例

# data_listの中からidが3のオブジェクトを検索する data_list = [{"id": "1"}, {"id": "2"}, {"id": "3"}, {"id": "4"}] key = 3 item = "id" def linear_search(arr, key, item): for obj in arr: if obj[item] == key: return obj return None target_data = linear_search(data_list, key, item) # target_dataには{"id": "3"}が入る