単元一覧 › 大学数学 アルゴリズムと計算量

アルゴリズムと計算量の問題

難易度 3期末試験の応用レベル大学数学 アルゴリズムと計算量

互いに異なる 個の数を並べた配列 を、次の挿入ソートで昇順に並べかえる。

の順に、次の操作を行う。 とし、 から始めて、 である間「 と を比較し、 ならば を に移して を 減らす。 ならばそこで止める」をくり返す。止まったとき(または になったとき)、 とする。

ここで、数どうしの比較( と の比較)だけを数え、 かどうかの判定は数えない。最初の配列が 個の数の 通りの並べ方のどれであるかが同様に確からしいとき、比較回数の期待値を求めよ。

この問題で使うもの

この問題を解けるようになるまで(30 技能)

ヒント

行き詰まったら、上から順に 1 つずつ開いてください。

ヒント 1

各 について、 番目の要素を挿入するときの比較回数の期待値を求め、期待値の線形性で足し合わせる。

ヒント 2

より大きい既存要素の個数を とすると、比較回数は なら 回、 なら 回。 は を等確率でとる。

ヒント 3

番目の挿入の比較回数の期待値は となる。これを から まで足す。

答えと解説

答えを見る
結果を記録する(このブラウザにだけ保存されます):
解説を読む

番目の要素 を挿入するとき、 はすでに昇順に並んでいる。このうち より大きいものの個数を とする()。

  • のとき:大きい 個との比較で 回、そのあと より小さい要素との比較で止まるので 回、合わせて 回。
  • のとき: 個すべてと比較して になって終わるので 回( より 少ない)。

ランダムな並べ方では、 が最初の 個の中で何番目に大きいかは等確率なので、 は を等確率 でとる。よって 番目の挿入での比較回数の期待値は

期待値の線形性より、全体の期待値は

ここで 、

したがって期待値は

(一般に 個のときは 、 となる。 を代入すると で一致する。)

別解

番目の要素 を挿入するとき、整列済みの先頭 個のうち より大きいものの個数を とする()。相異なる数で並びが同様に確からしいので、 は の各値を確率 でとる。

比較回数は、 のとき、 個の大きい要素との比較と、止まるための 1 回の比較で 回。 のとき( が最小)は になるまで 回比較し、 の判定は数えないので 回。

よって 番目の期待比較回数は

。

合計は 。

検算: 期待転倒数 、各挿入で最後の比較( が最小でないとき 1 回)を加えると 。一致する。

この問題の確認

AI が作成した問題です。公開前に次の確認を行いました。確認の方法について

間違いを報告する

この問題の誤り・分かりにくい点・難易度や学年のずれを知らせる
どこについての報告ですか

報告の内容と問題の番号を保存します。名前やメールアドレスは保存しません。

関連する問題