次の手順はシェルソートによる整列を示している。データ列 7,2,8,3,1,9,4,5,6 を手順 (1)~(4) に従って整列するとき,手順 (3) を何回繰り返して完了するか。ここで,[[ \quad ]] は小数点以下を切り捨てた結果を表す。 〔手順〕 (1) “H[データ数÷3]H \leftarrow [\text{データ数} \div 3]” とする。 (2) データ列を,互いに HH 要素分だけ離れた要素の集まりから成る部分列とし,それぞれの部分列を,挿入法を用いて整列する。 (3) “H[H÷3]H \leftarrow [H \div 3]” とする。 (4) HH が 0 であればデータ列の整列は完了し,0 でなければ (2) に戻る。

出典平成31年 春期 応用情報技術者試験 午前 問6
2
3
4
5