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

分割統治の漸化式の厳密な解

, のような漸化式を とおいて の漸化式に直し、 を の式で求められる

前提

この技能までの道筋(19 技能)
算数中学高校大学大学院

読み込み中…

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

一覧で見る(前提が先)
  1. 小数の四則計算 (算数 計算と数のきまり)
  2. 分数のたし算・ひき算 (算数 計算と数のきまり)
  3. 分数のかけ算・わり算 (算数 計算と数のきまり)
  4. 小数と分数のまじった計算 (算数 計算と数のきまり)
  5. 逆算(□ を求める) (算数 計算と数のきまり)
  6. 正負の数の加法・減法 (中学数学 数と式)
  7. 四則の混じった計算の順序 (算数 計算と数のきまり)
  8. 正負の数の乗除・累乗と四則混合 (中学数学 数と式)
  9. 分配法則を使った計算のくふう (算数 計算と数のきまり)
  10. 文字式の計算(同類項・分配法則) (中学数学 数と式)
  11. 1 次方程式の解き方 (中学数学 方程式)
  12. 連立方程式の解き方(加減法・代入法) (中学数学 方程式)
  13. 等差数列・等比数列の一般項 (数学B 数列)
  14. 型の漸化式 (数学B 数列)
  15. 等間隔にならんだ数の和 (算数 計算と数のきまり)
  16. 等差・等比数列の和と Σ (数学B 数列)
  17. 階差数列と階差型の漸化式 (数学B 数列)
  18. (等差)×(等比)の数列の和 (数学B 数列)
  19. 置き換えによる漸化式の解法 (数学B 数列)

説明

アルゴリズムの計算時間を表す , のような分割統治の漸化式を、 とおいて普通の数列の漸化式に直し、 を の式で正確に求められるようになります。マージソートのように、大きさ の問題を大きさ の問題 個( は正の整数)に分けて解き、分割と統合に に比例する手間がかかる場面で使います。オーダーを見積もるだけでなく、具体的な値まで求められます。

なぜそうしてよいのか

は、 での値を での値から決める式です。 から出発して を 2 倍ずつにしていくと、値が決まるのは だけです。そこで ( は 0 以上の整数)に限り、 とおきます。 のとき なので です。また、式の中の そのものは です。すると漸化式は ()、 という、添字が 1 ずつ進む普通の数列の漸化式になります。

この形は、前提の技能で扱った 型と同じです。分割統治では は部分問題の個数なので正の整数であり、特に です。そこで両辺を で割り、 とおくと という階差型になります。あとは を等比数列の和で計算し、 に戻せば が求まります。ただし のときは公比が 1 なので和は になり、 なら です。

手順

  1. が 0 でない(分割統治では正の整数)ことを確認し、( は 0 以上の整数)とおく。 のとき である。

  2. 漸化式を で書き直す: ()。初期値は 。

  3. なので両辺を で割り、 とおいて階差型 に直す()。

  4. を計算する。 なら等比数列の和、 なら和は 。

  5. に戻して を求め、 で元の漸化式と一致するか確かめる。

例題

関数 が 、( は 2 以上の 2 のべき乗)を満たすとき、( は 0 以上の整数)を の式で求めよ。

例題の解答

手順1: 。 とおく。 のとき なので 。
手順2: 漸化式は ()、初期値は 。
手順3: 両辺を で割ると 。 とおくと 、。
手順4: のとき 。これは のときも で成り立つ。
手順5: 。確認: で 、 で 、 で と一致する。
よって 。

答え:

よくある誤り

この説明は AI が書き、別の AI が例題を独立に解いて答えを確かめ、説明を一歩ずつ査読しました。

入口の問題

この技能を使う問題

この技能の次に学べること