[解決済み] 再帰の複雑さ T(n) = T(n-1) + T(n-2) + C
2022-02-28 22:20:01
質問
以下の漸化式の複雑さの算出方法を理解したい。
T(n) = T(n-1) + T(n-2) + C
与えられた
T(1) = C
と
T(2) = 2C;
一般に、以下のような方程式では
T(n) = 2T(n/2) + C
(T(1)=Cとした場合)、私は次のような方法をとっています。
T(n) = 2T(n/2) + C
=> T(n) = 4T(n/4) + 3C
=> T(n) = 8T(n/8) + 7C
=> ...
=> T(n) = 2^k T (n/2^k) + (2^k - 1) c
では、次に
n/2^k = 1 => K = log (n)
(2の底に)
T(n) = n T(1) + (n-1)C
= (2n -1) C
= O(n)
しかし、私が抱えている問題に対して、同様のアプローチを思いつくことができません。もし、私のやり方が間違っていたら、訂正してください。
どのように解決するのですか?
複雑さは入力サイズに関係し、各呼び出しは呼び出しの二分木を生成します。
ここで
T(n)
作る
2
n
の呼び出しが合計で.
T(n) = T(n-1) + T(n-2) + C
T(n) = O(2
n-1
) + O(2
n-2
) + O(1)
O(2
n
)
同じように、再帰的関数をフィボナッチ数として一般化することができます。
T(n) = F(n) + ( C * 2
n
)
次に、再帰的な方法ではなく、直接的な式を使用することができます。
という複雑な方法を用いて ビネーの公式
関連
-
[解決済み] 大きなӨ記号は具体的に何を表すのですか?
-
[解決済み] O(log* N)とは何ですか?
-
[解決済み] 山積みされた靴下を効率よく組み合わせるには?
-
[解決済み] ゲーム「2048」の最適なアルゴリズムとは?
-
[解決済み] 末尾再帰とは何ですか?
-
[解決済み] 簡単な面接問題が難しくなった:1~100の数字が与えられたとき、ちょうどk個の数字が欠けていることを見つけなさい。
-
[解決済み] ヒープの構築はどうして時間計算量O(n)になるのですか?
-
[解決済み】画像処理。コカ・コーラ缶」認識のためのアルゴリズム改良
-
[解決済み】アルゴリズムの時間複雑性を求めるには?
-
[解決済み】整数の流れから実行中央値を求める
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] O(n)とO(log(n))の違い -どちらが優れていて、O(log(n))とは一体何なのか?
-
[解決済み] O(log n)とは具体的にどういう意味ですか?
-
[解決済み] O(log* N)とは何ですか?
-
[解決済み】ソートアルゴリズムにおける安定性とは何ですか、なぜそれが重要なのですか?
-
[解決済み】なぜBase64を使うのか?
-
[解決済み】ある点が2次元の三角形の中にあるかどうかを判断する方法は?[クローズド]
-
[解決済み】遺伝的アルゴリズム/遺伝的プログラミングの良い解決例とは?[クローズド]
-
[解決済み】ポリゴンの膨張・収縮(オフセット、バッファリング)のためのアルゴリズム
-
[解決済み】異なるサイズの長方形を、かなり最適な方法で可能な限り小さな長方形に詰め込むには、どのようなアルゴリズムが使用できるだろうか?
-
[解決済み] [解答】ある数字が与えられたとき、元の数字と全く同じ桁数の次の数字を求めよ。