河內塔, 平面上的直線和約瑟夫問題的公式列表和出處

1. 河內塔(漢諾塔)

    概念:http://zh.wikipedia.org/wiki/%E6%B1%89%E8%AF%BA%E5%A1%94

    定義:n表示圓盤數;T(n)表示n個河內塔需要的最少搬運次數。

    遞推公式:T(n) = 2*T(n-1) + 1

    通項公式:T(n) = (2^n) - 1


2. 平面上的直線

    概念:n條直線可以將無限延伸的平面最多可以劃分成多少分?

    定義:n表示直線數;L(n)表示n條直線最多可以劃分的份數。

    遞推公式:L(n) = L(n-1) + n

    通項公式:L(n) = n(n + 1)/2 + 1


2.  約瑟夫問題

    概念:n個人圍成一圈,從第2個開始,每隔一人殺掉,即殺死2, 4, 6……。問:最後剩下人的原始編號J(n)

    定義:n表示人數;J(n)表示最後剩下人的原始編號

    遞推公式:J(1) = 1;J(n是偶數) = 2J(n/2) - 1;  J(n是奇數) = 2J( (n-1) / 2 ) + 1

    通項公式:J( 2^m + k ) = 2*k + 1;  其中,2^m + k = n, 2^m是小於等於n的最大整數

     計算機公式: J(n) = 對n循環左移一位。例如:J(5) = 3, J(3) = 1


具體的證明和推導可以看《具體數學:計算機科學基礎》第一章。



    


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章