アルゴリズムと計算量の問題
ある再帰アルゴリズムは、大きさ の入力を大きさ の つの部分問題に分けて再帰的に解き、分割と統合に の手間をかける。その計算時間 は、 以上の整数 に対して の形の について
で定められている。
以上の整数 に対し、 を の式で表せ。
この問題で使うもの
- 分割統治の漸化式の厳密な解(説明と入口の問題)
- 置き換えによる漸化式の解法(説明と入口の問題)
この問題を解けるようになるまで(20 技能)
読み込み中…
右端(太枠)がこの問題で使う技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。
ヒント
行き詰まったら、上から順に 1 つずつ開いてください。
ヒント 1
のとき、 と がそれぞれ を使ってどう書けるかを考え、 とおいて漸化式を書き直しましょう。
ヒント 2
書き直した漸化式は になります。両辺を で割ると、等差数列の形になります。
ヒント 3
とおくと 、 です。
答えと解説
答えを見る
どこでつまずきましたか?(選ぶと、戻る場所を案内します)
解説を読む
このままではマスター定理の形 ではないので、変数変換を行う。
変数変換
のとき 、 である。そこで とおくと、 のとき
となる。
漸化式を解く
両辺を で割り、 とおくと
よって であり
検算
: 、式は 。
: 、式は 。
よって である。
( で表すと であり、 となる。これは 、 とおいた漸化式 にマスター定理の第 2 の場合を当てはめた結果 と一致する。)
別解
とおく。 のとき 、 なので、 で
両辺を で割り とおくと 、。よって であり、
検算: : 。: 。: 。いずれも一致する。