配列A[i](i = 1, 2, …, n)を、次のアルゴリズムによって整列する。
行2〜3の処理が始めて終了したとき、必ず実現されている配列の状態はどれか。
[アルゴリズム]
行番号
ア | A[1]が最小値になる。 |
イ | A[1]が最大値になる。 |
ウ | A[n]が最小値になる。 |
エ | A[n]が最大値になる。 |
答え ア
【解説】
配列A[ ] = {3, 4, 1, 2}の場合について処理を行う。
行番号1で、i = 1のときに、行2〜3を行う。
行番号2で、j = 4のときに、行3を行う。
行番号3で、A[4] = 2、A[3] = 1なので、なにもしない。
次に、j = 3で行番号3を行い、A[3] = 1、A[2] = 4なので、A[3]とA[2]を入れ替える。
次に、j = 2で行番号3を行い、A[2] = 1、A[1] = 3なので、A[2]をA[1]を入れ替える。
この段階で行2〜3が終了して、このときの配列の状態はA[ ] = {1, 3, 4, 2}なので、A[1]が最小(ア)になっている。
【キーワード】
・整列