「線型探索」の版間の差分
ナビゲーションに移動
検索に移動
imported>MikeCAT (とりあえず作成) |
imported>MikeCAT 細 (関連項目に「全探索」を追加) |
||
(他の1人の利用者による、間の2版が非表示) | |||
1行目: | 1行目: | ||
− | '''線型探索''' | + | '''線型探索'''(読み:せんけいたんさく、英語:linear search, sequential search)とは、[[データ]]を[[検索]]する[[アルゴリズム]]のひとつで、候補を最初から順番に見ていき、検索対象と一致するかどうか確かめていく探索方法である。 |
− | [[ソート]] | + | == 概要 == |
+ | 大雑把にいえば[[配列]]の先頭から末尾まで総当たりで検索する[[アルゴリズム]]である。 | ||
+ | [[インデックス]]を持たない[[データ]]から探す、[[ソート]]されていない候補から目的の[[データ]]を探す、という場合には最も高速な方法と言われている。 | ||
− | + | また、わざと検索対象を後の方に置いておき、探索に時間をかけさせるという作戦に対抗するため、候補を最初から順番ではなく[[ランダム]]に見ていく方法や、昨今の[[マルチコアCPU]]の特性を生かして[[マルチスレッド]]で前後2方向などから並列して探索する[[マルチスレッド線形探索]]なども考案されている。 | |
− | |||
==関連項目== | ==関連項目== | ||
+ | * [[全探索]] | ||
* [[二分探索]] | * [[二分探索]] | ||
* [[マルチスレッド線型探索]] | * [[マルチスレッド線型探索]] |
2013年8月29日 (木) 12:37時点における最新版
線型探索(読み:せんけいたんさく、英語:linear search, sequential search)とは、データを検索するアルゴリズムのひとつで、候補を最初から順番に見ていき、検索対象と一致するかどうか確かめていく探索方法である。
概要[編集 | ソースを編集]
大雑把にいえば配列の先頭から末尾まで総当たりで検索するアルゴリズムである。 インデックスを持たないデータから探す、ソートされていない候補から目的のデータを探す、という場合には最も高速な方法と言われている。
また、わざと検索対象を後の方に置いておき、探索に時間をかけさせるという作戦に対抗するため、候補を最初から順番ではなくランダムに見ていく方法や、昨今のマルチコアCPUの特性を生かしてマルチスレッドで前後2方向などから並列して探索するマルチスレッド線形探索なども考案されている。