「整列・探索・再帰って、どう違うの?」
「Big O 記法って、何を意味してるの?」
そんな疑問を抱える、基本情報技術者の科目B 対策を始めたあなたへ。
結論から言えば、
アルゴリズムとは、問題を解くための「手順の設計図」のことです。整列・探索・再帰の3つを押さえると、科目B の出題の見通しが立ちます
と説明されるのが一般的です。
「アルゴリズム」とは、決まった結果に到達するための手順のセットを指す言葉とされています。手順の「速さ」を表す指標が計算量(Big O)です。
この記事では、整列(バブル・クイック・マージ)、探索(線形・二分)、再帰と Big O までを、初心者のあなた向けにメタファーでやさしくまとめました。基本情報技術者の科目B 対策にも役立ちます。
1. アルゴリズムとは — 料理レシピの手順設計

あなたが「アルゴリズム」という言葉に出会ったとき、まず押さえたいのは「問題を解くための手順の設計図」という基本定義です。
同じ目的を達成する手順は、いくつも考えられます。たとえば「100人の名簿を名前順に並べる」という目的に対しても、隣同士を比べていく方法、基準値で分割する方法、いったん分けてから統合する方法などが存在します。
2. 整列(バブル/クイック/マージ)

あなたが最初に出会う代表的なアルゴリズムが、整列(ソート)です。バラバラのデータを、ある順序で並び替える手順を指す言葉とされています。試験で問われるのは主に3種類です。
- バブルソート: 隣同士を比べて、順序が逆なら交換する。仕組みが素直で理解しやすい
- クイックソート: 基準値(ピボット)を1つ決め、それより小さい組と大きい組に分ける。再帰的に繰り返す
- マージソート: データを半分ずつに分け、最後に整列しながら統合する
3種類の違いは、計算量に表れます。バブルソートは平均で O(n²)、クイックソートとマージソートは平均で O(n log n) と言われています。データが多いほど、後者の方が速くなるのが一般的です。
| 整列方式 | 平均計算量 | 特徴 |
|---|---|---|
| バブルソート | O(n²) | 素朴で実装しやすい |
| クイックソート | O(n log n) | 基準値で分割・再帰 |
| マージソート | O(n log n) | 分割して統合 |
→ 整列されたデータを大規模に管理する仕組みとしては、データベースとは も合わせて押さえると、整列が実務で使われる場面のイメージが広がります。
3. 探索(線形/二分)

あなたがデータの中から目的の値を見つける手順が、探索(サーチ)です。代表的な手順は2種類で、考え方が大きく異なる仕組みとされています。
- 線形探索: 先頭から1つずつ順に比べていく。整列されていないデータでも使える
- 二分探索: 整列済みのデータに対し、中央の値と比較して半分に絞り込む。これを繰り返す
計算量で比べると、線形探索は O(n)、二分探索は O(log n) と言われています。データ数が多いほど差は大きく、たとえば100万件なら線形探索は最大100万回の比較、二分探索は約20回の比較で済むのが一般的とされています。
イメージしやすいのが、紙の電話帳から名前を探す場面です。先頭から順にめくる方法が線形探索、真ん中を開いて前半か後半かを判断する方法が二分探索に対応すると言われています。あなたが普段やっている探し方も、実は二分探索に近い場面が多いはずです。
4. 再帰と計算量(Big O)

あなたが整列・探索の説明で見かけた「再帰」とは、手順の中で自分自身を呼び出す考え方を指す言葉とされています。クイックソート・マージソート・二分探索は、いずれも再帰的に書けるアルゴリズムの代表例です。
再帰は「大きな問題を、同じ形の小さな問題に分解して解く」発想で整理されることが多いと言われています。分解の停止条件(これ以上分けない条件)をあらかじめ設けるのが基本です。
そして手順の速さを表す指標が計算量(Big O 記法)です。データ数 n が増えたとき、処理回数がどう増えていくかを表す目安として使われています。
| Big O | 読み方 | 代表例 |
|---|---|---|
| O(1) | 定数時間 | 配列の先頭の値を取り出す |
| O(log n) | 対数時間 | 二分探索 |
| O(n) | 線形時間 | 線形探索 |
| O(n log n) | 準線形時間 | クイックソート・マージソート |
| O(n²) | 二乗時間 | バブルソート |
5. まとめ: 今日からできる、最初の一歩

ここまで読んだあなたは、アルゴリズム基礎の輪郭をしっかり押さえられたはずです。要点を3つに整理します。
- アルゴリズム = 問題を解くための手順の設計図。正確さと速さで評価される
- 整列(バブル O(n²) / クイック・マージ O(n log n))と探索(線形 O(n) / 二分 O(log n))は一組で押さえる
- 再帰は大きな問題を小さな問題に分ける考え方、Big O はデータが増えた時の速さの目安
あなたが今日からできる、最初の一歩を3つ用意しました。
- 用語整理: 「整列3種・探索2種・再帰・Big O」をノートに1行ずつ書く(3分)
- 問題集: 科目B アルゴリズム問題集に進み、手順を読み取る感覚を試す(7分)
- 試験全体俯瞰: 基本情報技術者試験全体概要に戻り、科目B の位置づけを確認(2分)
たった12分で、アルゴリズムは輪郭のある概念に変わります。完璧に覚えてから動くより、まず1問解いてみる。それが、あなたにとっていちばん速い学び方です。
次のステップ
- データベースとは — 整列・探索が日常的に使われる場面のひとつ
- データ構造とは — アルゴリズムと表裏一体、データの整理方法をセットで学ぶ
- 2進数と論理回路とは — アルゴリズムを支える、計算そのものの土台
- 基本情報技術者 科目B アルゴリズム 問題集 — 紐付け T2、手順読み取りの練習
- 基本情報技術者 アルゴリズム 問題集 — 整列・探索・再帰を中分類で演習し理解度を確認
- 基本情報技術者試験 全体概要 — 科目B での位置づけ