我有一个算法片段,必须找到最坏情况的重复并找到它的封闭形式。到目前为止,我遇到了最严重的情况:
T(n)= 2T(n/4) + C for n > 1.
我尝试扩展它,目前我有这种形式:
T(n)= 2 k T(n / 4 k )+ Ck
k = log 4 (n)或k =(log 2 (n))/ 2。
我有T(1)= 1000.
我对下一步该做什么感到茫然,或者如何准确地找到它的封闭形式。我仍然看不到算法中的模式或我的T(n)扩展。任何见解都会很棒,谢谢。
答案 0 :(得分:2)
当n = 4 ^ k时,你能得到的是一个封闭的公式:
T(4^k) = 2^k x 10^3 + C + 2C + ... + 2^(k-1)C
= 2^k x 10^3 + (2^k - 1)C
最后一个等式来自几何系列公式。
对于所有其他n,我认为您可以做的最好是应用master theorem
你的等式落在定理的情况1中(你有a = 2,b = 4,c = 0)。 因此:
log_b(a) = 1 / 2
和
T(n) = O(sqrt(n))
我不确定它是否会接受一个独特的封闭表格。