卡特蘭數的證明和常見的適用情況

2022-05-27 17:45:13 字數 1582 閱讀 5556

**: 請支援原創

卡特蘭數是一種經典的組合數,經常出現在各種計算中,其前幾項為 :

132, 429, 1430, 4862, 16796, 

58786, 208012, 742900, 2674440, 9694845,

35357670, 129644790, 477638700, 1767263190,

6564120420, 24466267020, 91482563640, 343059613650,1289904147324,

4861946401452, ...

卡特蘭數一般的計算公式:另類遞推公式:c(n)=c(n-1)*((4*n-2)/(n+1));

cn的另乙個表達形式為

所以,cn是乙個自然數,這一點在先前的通項公式中並不顯而易見。

這個表達形式也是andré對前一公式證明的基礎。

卡塔蘭數滿足以下遞推關係

它也滿足

這提供了乙個更快速的方法來計算卡塔蘭數。

卡塔蘭數的漸近增長為

它的含義是左式除以右式的商趨向於1當n → ∞。(這可以用n!的斯特靈公式來證明。)

所有的奇卡塔蘭數cn都滿足n = 2^k − 1。

所有其他的卡塔蘭數都是偶數。

說了這麼多,那麼卡特蘭數在實際問題中的應用還是很廣泛的:

經典問題:

(實質上卻都一樣,無非是遞迴等式的應用,就看你能不能分解問題寫出遞迴式了)

括號化問題。

矩陣鏈乘: p=a1×a2×a3×……×an,依據乘法結合律,不改變其順序,只用括號表示成對的乘積,試問有幾種括號化的方案?(h(n)種)

出棧次序問題。

乙個棧(無窮大)的進棧序列為1,2,3,..n,有多少個不同的出棧序列?

類似:

(1)有2n個人排成一行進入劇場。入場費5元。其中只有n個人有一張5元鈔票,另外n人只有10元鈔票,劇院無其它鈔票,問有多少中方法使得只要有10元的人買票,售票處就有5元的鈔票找零?(將持5元者到達視作將5元入棧,持10元者到達視作使棧中某5元出棧)

(2)在圓上選擇2n個點,將這些點成對連線起來,使得所得到的n條線段不相交的方法數。

將多邊行劃分為三角形問題。

將乙個凸多邊形區域分成三角形區域的方法數?

類似:一位大城市的律師在她住所以北n個街區和以東n個街區處工作。每天她走2n個街區去上班。如果她從不穿越(但可以碰到)從家到辦公室的對角線,那麼有多少條可能的道路?

類似:在圓上選擇2n個點,將這些點成對連線起來使得所得到的n條線段不相交的方法數?

4.給頂節點組成二叉樹的問題。

給定n個節點,能構成多少種形狀不同的二叉樹

先去乙個點作為頂點,然後左邊依次可以取0至n-1個相對應的,右邊是n-1到0個,兩兩配對相乘,就是h(0)*h(n-1) + h(2)*h(n-2) +…+ h(n-1)h(0)=h(n)(能構成h(n)個)

**實現見:

卡特蘭數的應用

卡特蘭數又稱卡塔蘭數,英文名catalan number,是 組合數學 中乙個常出現在各種計數問題中出現的 數列。以 比利時的數學家歐仁 查理 卡塔蘭 1814 1894 的名字來命名,其前幾項為 1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,...

STL容器的適用情況

一 各種容器的特性 vector 典型的序列容器,c 標準嚴格要求次容器的實現記憶體必須是連續的,唯一可以和標準c相容的stl容器,任意元素的讀取 修改具有常數時間複雜度,在序列尾部進行插入 刪除是常數時間複雜度,但在序列的頭部插入 刪除的時間複雜度是o n 可以 在任何位置插入新元素,有隨機訪問功...

NOIP 衝刺 常見的遞推之卡特蘭數

例題 在乙個凸n邊形中,通過不相交於n邊形內部的對角線,把n邊形拆分成若干三角形,問有多少種拆分方案。啊啊啊啊 卡特蘭數 卡特蘭數又稱卡塔蘭數,卡特蘭數是組合數學中乙個常出現在各種計數問題中的數列。以比利時的數學家歐仁 查理 卡塔蘭 1814 1894 的名字來命名。原理 令h 0 1,h 1 1,...