
基本情報技術者試験基礎・応用
条件を読む・根拠を説明する
挿入ソートの移動
条件を整理し、答えを選んでから解き方を確認しましょう。
昇順に並ぶ先頭3要素[2,5,8]へ後続の4を挿入する。4より大きい要素を右へ1つずらし空いた位置へ4を置く。移動する既存要素はどれか。
答え・解き方を読む
8と5の2個
図で見る
移動する既存要素は8と5
先頭[2,5,8]へ4を挿入。8と5を順に右へ移し、2と5の間へ4を置くと[2,4,5,8]になります。
図は移動途中をまとめた状態です。4を保存してから既存要素を移すため、値を失わず挿入できます。
考える順序
- 1後ろから8は4より大きいので移動
- 2次の5も移動、2で停止
- 3空いた2と5の間へ4を入れる
選択肢ごとの理由
- 正解 · 8と5の2個
後ろから8は4より大きいので移動。次の5も移動、2で停止。空いた2と5の間へ4を入れる。
- 比較 · 2だけの1個
2は4より小さいため移動しません。
- 比較 · 2と5の2個
大きい側の8を先に移動する必要があります。
- 比較 · 2,5,8の3個
整列済みで4より小さい2はそのままです。