コード判定結果
動画プレイヤーの機能を制限して表示しています
一部機能が正常に読み込まれませんでした。
コンテンツブロックなどが動作していないかご確認ください。
コンテンツブロックなどが動作していないかご確認ください。
このチャプターでの演習課題が終了していません
次のチャプターへ進みますか
ジャッジに時間がかかっています
しばらくしてから再度アクセスしてください。
演習課題を利用するにはpaiza会員登録のうえ、
有料会員登録が必要です
有料会員登録が必要です
新・アルゴリズムとデータ構造入門 Java編5: 効率的なソートアルゴリズム
#03:シェルソートの実装
この動画を見るにはpaiza会員登録のうえ
有料会員登録が必要です
実技課題 「正しくシェルソートを実装する」
整数 n と要素数 n の数列 A 、整数 k と要素数 k の数列 h が与えられるので、この数列を与えられた間隔列 h でシェルソートでソートしてください。
右側のコードエリアに用意されているコードには誤りがあります。訂正し、問題を解くコードを完成させてください。
【制約】
・ 入力は全て整数
・ 1 ≦ k < n ≦ 10
・ 1 ≦ (数列 A の各要素) ≦ 100
・ 1 = h_k < h_{k+1} < ... < h_1 ≦ 100
期待する出力値
4
実際にシェルソートを実装してみます。そして、効率的にソートが行われていることを確認してみましょう。
n
A_1 A_2 ... A_n
k
h_1 h_2 ... h_k
・ 入力はすべて整数
・ 1行目に、数列の要素数 n が与えられます。
・ 2行目に、数列の要素 A_1, A_2, ... , A_n が半角スペース区切りで与えられます。
・ 3行目に、間隔列の要素数 k が与えられます。
・ 2行目に、間隔列の要素 h_1, h_2, ... , h_k が半角スペース区切りで与えられます。