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

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

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

番号 の 個のスロットからなるハッシュ表が最初は空である。この表に、互いに異なる 個のキーを 個ずつ順に、次の線形探査法(オープンアドレス法)で挿入する。

  • キーのハッシュ値を とし、スロット の順に(番号は を法として考え、スロット の次はスロット とする)調べ、最初に見つかった空のスロットにそのキーを入れる。
  • 個のスロットを調べることを探査 回と数える。キーを入れた空のスロットを調べることも 回に数える(たとえば、スロット が空ならば探査は 回)。

各キーのハッシュ値は のどれかに等確率 で定まり、キーどうしのハッシュ値は互いに独立であるとする。 個のキーを挿入し終えるまでの探査回数の合計の期待値を求めよ。

この問題で使うもの

この問題を解けるようになるまで(71 技能)
算数中学高校大学大学院

読み込み中…

右端(太枠)がこの問題で使う技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。

一覧で見る(前提が先)
  1. 樹形図で数え上げる
  2. 積の法則と和の法則
  3. 和の法則・積の法則と樹形図
  4. 順列・円順列・重複順列
  5. 組合せ
  6. 確率の定義と和事象・余事象
  7. 期待値
  8. 確率変数と確率分布
  9. 平均と合計
  10. 平均値・中央値・最頻値
  11. 代表値(平均値・中央値・最頻値)
  12. 分散と標準偏差
  13. 変量の変換と平均・分散
  14. 確率変数の期待値・分散と
  15. 確率変数の和と積(独立な場合)
  16. 指示変数と期待値の線形性
  17. 条件付き確率と乗法定理
  18. 独立な試行と反復試行
  19. 分数のたし算・ひき算
  20. 小数の四則計算
  21. 正負の数の加法・減法
  22. 分数のかけ算・わり算
  23. 四則の混じった計算の順序
  24. 正負の数の乗除・累乗と四則混合
  25. 分配法則を使った計算のくふう
  26. 文字式の計算(同類項・分配法則)
  27. 乗法公式による展開
  28. 因数分解
  29. 3 次式までの展開と因数分解
  30. 微分係数と導関数の定義
  31. 多項式の微分
  32. 小数と分数のまじった計算
  33. 逆算(□ を求める)
  34. 1 次方程式の解き方
  35. 比例・反比例の式とグラフ
  36. 約数の見つけ方
  37. 素因数分解と約数の個数
  38. 平方根の意味と根号の簡単化
  39. 関数 の式と変域
  40. 平方完成と 2 次関数のグラフ
  41. 2 次不等式
  42. 剰余の定理・因数定理と高次方程式
  43. 増減表と極値
  44. 等間隔にならんだ数の和
  45. 等差・等比数列の和と Σ
  46. 数列の極限
  47. 関数の極限
  48. 関数の連続性と中間値の定理
  49. 平均値の定理
  50. 積と商の微分
  51. 第 2 次導関数とグラフの凹凸
  52. 合成関数の微分
  53. 円の周の長さと面積
  54. おうぎ形の弧の長さと面積
  55. 弧の長さからおうぎ形の中心角と面積を求める
  56. 三角形・四角形の面積
  57. 三平方の定理
  58. 特別な直角三角形の辺の比
  59. 弧度法と単位円による三角関数
  60. の極限
  61. 加法定理と 2 倍角・半角・積和の公式
  62. 三角関数の導関数
  63. 根号の乗除と加減
  64. 指数の拡張と指数関数
  65. 対数の定義と性質
  66. 自然対数の底
  67. 指数関数・対数関数の導関数
  68. 増減・凹凸・漸近線とグラフ
  69. テイラー展開
  70. ハッシュの衝突確率(誕生日問題)
  71. ハッシュの衝突の期待値

ヒント

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

ヒント 1

期待値の線形性を使い、 個目・ 個目・ 個目のキーの挿入でかかる探査回数の期待値を別々に求めて足そう。

ヒント 2

個目のキーの探査回数は、それまでに埋まった 個のスロットが「隣り合って塊になっているか」「離れているか」で変わる。それぞれの状態になる確率と、その状態での条件付き期待値を求めよう。

ヒント 3

個目の期待値は 、 個目は である。 個のキーを入れた後、埋まったスロットが隣り合う確率は 、離れる確率は になる。

答えと解説

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

期待値の線形性により、 番目のキーの挿入にかかる探査回数を とすると、求める期待値は である。

1 個目のキー: 表は空なので必ず 。。

2 個目のキー: 1 個目のキーがスロット に入っているとする。2 個目のハッシュ値が のとき(確率 )はスロット , を調べて 、それ以外(確率 )は 。

2 個のキーを入れた後の表の状態: 2 個目のキーが入るスロットは
- ハッシュ値が のとき 、ハッシュ値が のとき 、ハッシュ値が のとき
- ハッシュ値が のとき 、ハッシュ値が のとき

である。前の 3 通り(確率 )では、埋まったスロットが隣り合う 個の連続した塊になる(状態 P)。後の 2 通り(確率 )では、埋まったスロットが隣り合わない 個に分かれる(状態 Q。 個のスロットが環状なので、どちら側にも空きスロットが挟まる)。

3 個目のキー:

状態 P で、埋まったスロットを とする( は空)。ハッシュ値が なら を調べて 回、 なら 回、残りの 個の空きスロットならどれも 回。

状態 Q で、埋まったスロットを とする。どちらの次のスロットも空なので、ハッシュ値が または なら 回、残りの 個の空きスロットなら 回。

よって

合計:

別解

1 個目: 表は空なので探査は必ず 1 回。期待値 。

2 個目: 1 個目が入ったスロットを とする。ハッシュ値 (確率 )なら探査 1 回、(確率 )なら が埋まっていて次の が空なので探査 2 回。期待値 。

このとき 2 個目の入るスロットは、 なら 、 なら 。 を基準に 2 個のキーが占めるスロットは、()、、 の各確率 で隣り合い(合計 )、 のとき(合計 )は隣り合わない(環状に距離 2)。

3 個目:
- 隣り合う場合、占有を とする。 なら探査 3 回、 なら 2 回、残り 3 通りは 1 回。合計 、期待値 。
- 隣り合わない場合、占有を とする。 なら が埋まり が空なので 2 回、 なら が空なので 2 回、残り 3 通りは 1 回。合計 、期待値 。

3 個目の期待値は 。

期待値の線形性より合計は 。

検算: 3 個のハッシュ値の組は全部で 通り。2 個目までの場合分けの確率 は合計 1 で、各場合の 3 個目の探査回数の平均が であることを上のように確かめたので、全体の期待値は 。

この問題の確認

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

間違いを報告する

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

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

関連する問題