【interview】卡特蘭數
涉及卡特蘭數的題目列舉,也是組合數學中一些例子:
詳解連結 https://zh.wikipedia.org/wiki/%E5%8D%A1%E5%A1%94%E5%85%B0%E6%95%B0
1. n個節點的二叉樹有多少種形態?
Cn表示有2n+1個節點組成不同構滿二叉樹(full binary tree)的方案數。
下圖中,n等於3,圓形表示內部節點,月牙形表示外部節點。本質同上。
2. 矩陣鏈乘: P=a1×a2×a3×…×an,依據乘法結合律,不改變其順序,只用括號表示成對的乘積,有幾種括號化的方案?
- Cn表示所有包含n組括號的合法運算式的個數:((())) ()(()) ()()() (())() (()())
3. 一個棧(無窮大)的進棧序列為1,2,3,..n,有多少個不同的出棧序列?
4. 有2n個人排成一行進入劇場。入場費5元。其中只有n個人有一張5元鈔票,另外n人只有10元鈔票,劇院無其它鈔票,問有多少中方法使得只要有10元的人買票,售票處就有5元的鈔票找零?(將持5元者到達視作將5元入棧,持10元者到達視作使棧中某5元出棧)
5. 將一個凸多邊形區域分成三角形區域的方法數?
6. 在圓上選擇2n個點,將這些點成對連線起來,使得所得到的n條線段不相交的方法數。
7. 一位大城市的律師在她住所以北n個街區和以東n個街區處工作。每天她走2n個街區去上班。如果她從不穿越(但可以碰到)從家到辦公室的對角線,那麼有多少條可能的道路?
- Cn表示所有在n × n格點中不越過對角線的單調路徑的個數。一個單調路徑從格點左下角出發,在格點右上角結束,每一步均為向上或向右。計算這種路徑的個數等價於計算Dyck word的個數:X代表“向右”,Y代表“向上”。下圖為n
8. Cn表示長度2n的dyck word的個數。Dyck word是一個有n個X和n個Y組成的字串,且所有的字首字串皆滿足X的個數大於等於Y的個數。以下為長度為6的dyck word: XXXYYY XYXXYY XYXYXY XXYYXY XXYXYY
證明:
令1表示進棧,0表示出棧,則可轉化為求一個2n位、含n個1、n個0的二進位制數,滿足從左往右掃描到任意一位時,經過的0數不多於1數。顯然含n個1、n個0的2n位二進位制數共有個,下面考慮不滿足要求的數目。
考慮一個含n個1、n個0的2n位二進位制數,掃描到第2m+1位上時有m+1個0和m個1(容易證明一定存在這樣的情況),則後面的0-1排列中必有n-m個1和n-m-1個0。將2m+2及其以後的部分0變成1、1變成0,則對應一個n+1個0和n-1個1的二進位制數。反之亦然(相似的思路證明兩者一一對應)。
從而。證畢。
9.
- Cn表示用n個長方形填充一個高度為n的階梯狀圖形的方法個數。下圖為n = 4的情況:
什麼是卡特蘭數?
f(n)=f(n-1)f(0)+f(n-2)f(1)+……….+f(1)f(n-2)+f(0)f(n-1)
該數列稱為卡特蘭數(Catalan數),該遞推關係的解為:
參考博文:
https://blog.csdn.net/adminabcd/article/details/46672759