Catalan数列
引入
今天聽學長講了卡特蘭數列后對其有了更深的認識,在此完善了一下之前的博客加以總結。
首先用一個經典的例子來描述一下Catalan數列,我們有一個1~n的數列和一個大小為n的棧,我們有如下兩種操作:
我們可以顯然地發現,如果我們選擇操作的順序不同,我們最后所形成的出棧序列也不相同,那么有多少種出棧序列呢?
而這個數列中的C(n),就是我們所定義的Catalan數列。
如果我們把所有每一次的操作都寫出來,可以得到一個關于1和2的操作序列,這個序列有以下性質:
?
定義
?
通項公式
通項公式推導
方法1:數學方法,摘自某大老的PPT,表示不是很了解,在此向各位大佬請教。
?
?
?
?
?
?即(注意他證明過程中的初值是)
?
?
方法2:組合數證明法
?
我們設定一個情景:假設一個點從A(0,0)出發走到B(n,n),我們定義兩種走的方法:
我們從A走到B,一共要走2n步,其中n步為1,n步為2,這樣我們從A走到B的方案也就可以轉化為一個1和2的序列了,而所有的1和2的序列構成的排列,即為從A走到B的方案數:
相較之于引言中所提到的序列,要使通過這種情景生成的序列是滿足Catalan的數列的方案序列,我們需要的充要條件是從左往右1的個數永遠比2的個數少(即向上走過的次數不少于向右走過的次數),即所走的路徑只存在于紫線的上部,而這個條件等價于所形成的路徑與綠線沒有交點。我們已經知道了所有的方案數,我們只需要求出不滿足條件的方案數就可以了。
舉出一個反例(紅線)我們把這條線與綠線的第一個交點之后的部分都關于綠線對稱得到藍線部分,加上前面的部分與之形成的路徑構成了一條從A(0,0)走向C(n+1,n-1)的路徑,我們可以發現這樣的藍線有以下三條性質:
由此,我們可以發現不合法的紅色路徑與滿足上述性質的藍色路徑一一對應,所以不合法路徑數就是藍色路徑數,為
所以,所有合法的路徑數為:,即Catalan的第n個數為
推論
-
- n個左括號和n個右括號組成的合法括號序列的數量為Cat(n)。
- 1,2,···,n經過一個棧,形成的合法出棧序列的數量為Cat(n)。
- n個結點構成的不同二叉樹的數量為Cat(n)。
- 在平面直角坐標系上每一步只能向右或向上走,從(0,0)走到(n,n)并且除兩個端點外不接觸直線 y = x的路線數量為Cat(n)。
- 推廣:在平面直角坐標系上,每一步只能向右或上走一步,從(0,0)走到(n,m)(n ≥m)并且除兩個點外不接觸直線 y = x 的路線的數量為
轉載于:https://www.cnblogs.com/2020pengxiyue/p/9291476.html
總結
- 上一篇: 各厂商服务器存储默认管理口登录信息(默认
- 下一篇: 使用ftp上传文件到Unix系统注意事项