線形探索とは?ソート不要と、速さの目安

公開: 更新: カテゴリ: テクノロジ系

30秒で結論

線形探索とは(全体像)

線形探索(逐次探索)とは、データを先頭から順に1つずつ調べていき、目的のものを見つける探し方のことだ。

本棚から1冊を探すとき、端から順に1冊ずつ見ていくイメージ。とても素直なやり方だ。

ここで一番のポイント。線形探索は、並べ替え(ソート)が要らない。データがバラバラに並んでいても、先頭から見ていけば探せる。「線形探索にはソートが必要」と思い込むと誤りになる(ソートが必要なのは、別の探し方である2分探索のほう)。


詳しく:ソート不要と、速さの目安

ここが心臓部。線形探索の特徴を押さえよう。

線形探索のポイント

項目やさしい意味
探し方先頭から順に1つずつ調べる
ソート不要(並んでいなくても探せる)
実装かんたん
速さデータが多いと時間がかかる(最悪は全部調べる)

線形探索のよいところは、ソートが要らず、作るのが簡単なこと。少ないデータなら、これで十分だ。

ただし、データが多いと、時間がかかる。目的のものが末尾にあったり、そもそも無かったりすると、最後まで全部調べることになる(最悪のとき、件数ぶんの比較が必要=O(n))。だから、「線形探索はいつも高速」と思い込むと誤りだ。データが多く、しかも並べ替えてあるなら、2分探索のほうが速いこともある。

わかりやすく言い換えると

身近なたとえで整理しよう。

線形探索は、「本棚の端から、1冊ずつ順に見ていく探し方」のイメージ。並んでいなくても探せるのが強みだ。

「ソート不要」というのは、データが並べ替えられていなくても、そのまま探せること。要するに、準備がいらない。

「データが多いと遅い」というのは、冊数が増えるほど、見る回数も増えること。つまり、件数に比例して時間がかかる。


試験のツボ

🔴 一番出る:線形探索の正体

①データを先頭から順に1つずつ調べて探す

②素直で、実装が簡単な探し方

🔴 次に出る:ソート不要

①並べ替え(ソート)が要らない

②データがバラバラでも、そのまま探せる

🟡 押さえると安定:速さの目安

①データが多いと時間がかかる(最悪は全部調べる=O(n))

②並べ替え済みなら、2分探索のほうが速いこともある


よくある間違い

「線形探索は、つねに高速に探せる」→ ✗  データが多いと、最悪は全部調べる(O(n))。並べ替え済みなら2分探索が速いことも。

「線形探索には、あらかじめ並べ替え(ソート)が必要だ」→ ✗  線形探索はソート不要。ソートが必要なのは2分探索のほう。

「線形探索は、データの真ん中から調べていく方法だ」→ ✗  真ん中から調べるのは2分探索。線形探索は、先頭から順に調べる。


試験での出題パターン

実際の問題でたしかめてみよう。

オリジナル問題1(線形探索の正体)

📝 オリジナル問題 1 線形探索の正体

線形探索に関する次の記述のうち、最も適切なものはどれか。

  1. 社員の出退勤を記録して、毎月の給与を計算するためのしくみである
  2. 取引先へ毎月の請求書を郵送する、決まった事務作業のことを指す
  3. 完成したシステムを宣伝して、より多く売るための広告活動である
  4. データを先頭から順に1つずつ調べて、目的のものを探す方法である
データパン
データパン 解答・解説

解答は 4 だぱん。

線形探索は、データを先頭から順に1つずつ調べて、目的のものを探す方法なんだぱん。本棚の端から見ていくイメージだぱん。

選択肢1は給与計算、選択肢2は請求書の事務、選択肢3は広告で、どれも違うぱん。

選択肢判定理由
1給与計算のしくみではない
2請求書の事務の話
3広告活動ではない
4先頭から順に探す方法で正しい

オリジナル問題2(ソート不要)

📝 オリジナル問題 2 ソート不要

線形探索とソート(並べ替え)の関係として、最も適切なものはどれか。

  1. 線形探索は、並べ替え(ソート)が不要で、そのまま探せるのだ
  2. 線形探索は、必ず並べ替え(ソート)をしてから探すものである
  3. 社員の給与を計算してから、線形探索をするものだとされている
  4. 取引先へ請求書を郵送してから、線形探索をするものだとされる
データパン
データパン 解答・解説

解答は 1 だぱん。

線形探索は、並べ替え(ソート)が不要で、そのまま探せるんだぱん。バラバラに並んでいても探せるのが強みだぱん。

選択肢2の「必ずソート」、選択肢3の給与、選択肢4の請求書は、いずれも違うぱん。

選択肢判定理由
1ソート不要で正しい
2ソートは不要
3給与計算の話ではない
4請求書の事務の話ではない

オリジナル問題3(速さの目安)

📝 オリジナル問題 3 線形探索の速さ

線形探索の速さに関する次の記述のうち、最も適切なものはどれか。

  1. 線形探索は、データが多くても、つねに一瞬で探せるとされる
  2. 社員の給与を計算した金額に応じて、速さが決まるとされている
  3. データが多いと時間がかかり、最悪は全部調べる(O(n))
  4. 取引先へ請求書を郵送した枚数に応じて、速さが決まるとされる
データパン
データパン 解答・解説

解答は 3 だぱん。

線形探索は、データが多いと時間がかかり、最悪は全部調べる(O(n))んだぱん。「つねに一瞬」ではないので、注意だぱん。

選択肢1の「つねに一瞬」、選択肢2の給与、選択肢4の請求書は、いずれも違うぱん。

選択肢判定理由
1つねに一瞬ではない
2給与の金額では決まらない
3多いと時間がかかる(O(n))で正しい
4請求書の枚数では決まらない

まとめ

押さえどころ

次に学ぶ


執筆: SikakuQuest編集部

勉強は、クエストになった。

資格の勉強を、冒険に変えるRPG学習アプリ

App Storeで見る