簡體   English   中英

T(0)= 1,T(1)= 0,T(n)= 2 * T(n-2)的遞歸關系

[英]Recurrence relation for T(0) = 1, T(1) = 0, T(n ) = 2* T(n-2)

我正在嘗試查找上述表達式的重復關系。

我推斷出:

T(n)= C * T(n-2)

T(n-2)= 2C * T(n-4)

T(n-4)= 3C * T(n-6)

...

T(n)= k / 2C * T(nk)

我被困在這里。 這是正確的方法嗎? 在簡化方程式中不包含T的簡化遞歸關系是什么?

我寫了一個python程序,發現了這種關系:

def rec(num):
    if num == 0:
        return 1
    elif num == 1:
        return 0
    else:
        return 2 * rec(num - 2)

經過幾次測試,我發現了以下規則:

索引2、3、4、5、6、7、8 ...

結果2,0,4,0,8,0,16 ....

因此,當n = 2k時,結果可能是2 ^(n / 2)&&當n = 2k +1時(k屬於Z)為0

讓我們觀察一下我們擴展此函數m次的行為:

T(n) = 2^2 * T(n - 2*2)
     = 2^3 * T(n - 2*3)
     = 2^4 * T(n - 2*4)
     = ...
     = 2^m * T(n - 2m)

n為:

  • 偶數: n - 2m最終等於零,這意味着最大值為m = n / 2 ,並且T(n) = 2^(n/2)
  • 奇數:“最終等於1,這意味着T(n) = 2^(...) * T(1) = 0

如果我們想用一個表達式編寫:

T(n) = (1 - n + floor[n/2]) * 2^(n/2)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM