アルゴリズムとプログラミング
挿入ソートで配列 [5, 3, 8, 1, 6] を昇順に整列する。2回の挿入操作(3を挿入、次に8を確認)を行った後の配列の状態として正しいものはどれか。
ア.[3, 5, 1, 8, 6]
イ.[3, 5, 6, 1, 8]
ウ.[3, 5, 8, 1, 6]正解
エ.[1, 3, 5, 8, 6]
解説
挿入ソートは「手持ちのトランプを整理する」ようなアルゴリズム。1枚ずつ正しい位置に差し込んでいく。
なぜ ウ が正解か
Step1: 3を挿入。3<5なので3と5を交換 → [3, 5, 8, 1, 6]。Step2: 8を確認。8>5なので交換不要、位置はそのまま → [3, 5, 8, 1, 6]。2回の操作後はウの状態になる。
出典: AI生成問題(学習用)