青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

什么是catalan數?
在網上找了n久,各種關于catalan數列的資料都殘缺不堪,弄了半天才理解什么是catalan數。所以干脆自己梳理一番。
t_4acd74e802000azp.pngt_4acd74e802000azp.png
原理:
令h(1)=1,catalan數滿足遞歸式:
h(n)= h(1)*h(n-1) + h(2)*h(n-2) + ... + h(n-1)h(1) (其中n>=2)
該遞推關系的解為:h(n)=c(2n-2,n-1)/n (n=1,2,3,...)

我并不關心其解是怎么求出來的,我只想知道怎么用catalan數分析問題。
我總結了一下,最典型的三類應用:(實質上卻都一樣,無非是遞歸等式的應用,就看你能不能分解問題寫出遞歸式了)
1.括號化問題。

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

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

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

3.將多邊行劃分為三角形問題。
將一個凸多邊形區域分成三角形區域的方法數?

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

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

不過下面這個問題似乎不好歸類,它怎么來應用這個catalan遞歸方程呢?你說說:n個結點可構造多少個不同的二叉樹?

看的人倒是不少,愿意想一想的倒是不多,唉

Catalan numbers

posted on 2006-11-06 16:39 哈哈 閱讀(3949) 評論(16)  編輯 收藏 引用

評論:
# re: catalan數在數據結構中的應用 2006-11-10 12:56 | 江水獸
h(n)=c(2n-2,n-1)/n 是什么意思哈 C代表什么呀  回復  更多評論
  
# re: catalan數在數據結構中的應用 2006-11-10 12:57 | 江水獸
順便說一下啊

你的瀏覽計數器太大了 影響頁面訪問和美觀 呵呵呵 隨便提個建議  回復  更多評論
  
# re: catalan數在數據結構中的應用 2006-11-10 13:11 | pengkuny
@江水獸
c代表組合數,即2n-2個體種選取n-1個的種類  回復  更多評論
  
# re: catalan數在數據結構中的應用 2006-11-10 13:12 | pengkuny
@江水獸
謝謝啊
不過字體設置到最小后,還是這么大,let it be  回復  更多評論
  
# re: catalan數在數據結構中的應用 2006-11-10 13:19 | 江水獸
不過好像有些問題還不是那么好處理呵

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

到底該如何利用類推法呢?

假如用f(x)來表示x個人時的情況,
那么一個人時f(1)=1;
兩個人時f(2)=2f(1)+1;
三個人時f(3)=3f(1)+f(2)f(1)+f(1)f(2);
四個人時f(4)=4f(1)+2f(3)f(1)+f(2)f(2)+f(1)f(2)f(1);
……
這樣貌似還是有點不好處理呀……  回復  更多評論
  
# re: catalan數在數據結構中的應用 2006-11-10 13:39 | pengkuny
@江水獸
你是說這么遞歸解這一堆遞歸式吧.
大可不必,
我們只需要發現一個問題滿足catalan數列的遞歸式,然后直接就可以得到解
f(n)=h(n)=c(2n-2,n-1)/n
有時候還要看具體問題,可能最終的解是h(n+1)或h(n-1)或h(2n)等等  回復  更多評論
  
# re: catalan數在數據結構中的應用 2006-11-10 17:22 | 江水獸
@pengkuny
好像有道理喲 我再看看!  回復  更多評論
  
# re: catalan數在數據結構中的應用[未登錄] 2007-05-16 12:40 | yiyi
應該是C(n)種吧
C(n)=(2n)!/[n!*(n+1)!]  回復  更多評論
  
# re: catalan數在數據結構中的應用[未登錄] 2007-05-16 12:42 | yiyi
應該是C(n)種吧
C(n)=(2n)!/[n!*(n+1)!]  回復  更多評論
  
# re: catalan數在數據結構中的應用 2007-05-30 11:44 | skyking
我想知道catalan數是怎樣推導出來的呀
怎樣用于算法的分析呀  回復  更多評論
  
# re: catalan數在數據結構中的應用 2007-07-18 20:44 | Menie
ding~~
好文啊,這幾個都很典型!  回復  更多評論
  
# re: catalan數在數據結構中的應用 2007-07-18 21:05 | Menie
對于每一個數來說,必須進棧一次、出棧一次。我們把進棧設為狀態‘1’,出棧設為狀態‘0’。n個數的所有狀態對應n個1和n個0組成的2n位二進制數。由于等待入棧的操作數按照1‥n的順序排列、入棧的操作數b大于等于出棧的操作數a(a≤b),因此輸出序列的總數目=由左而右掃描由n個1和n個0組成的2n位二進制數,1的累計數不小于0的累計數的方案種數。
在2n位二進制數中填入n個1的方案數為c(2n,n),不填1的其余n位自動填0。從中減去不符合要求(由左而右掃描,0的累計數大于1的累計數)的方案數即為所求。

不符合要求的數的特征是由左而右掃描時,必然在某一奇數位2m+1位上首先出現m+1個0的累計數和m個1的累計數,此后的2(n-m)-1位上有n-m個1和n-m-1個0。如若把后面這2(n-m)-1位上的0和1互換,使之成為n-m個0和n-m-1個1,結果得1個由n+1個0和n-1個1組成的2n位數,即一個不合要求的數對應于一個由n+1個0和n-1個1組成的排列。
反過來,任何一個由n+1個0和n-1個1組成的2n位二進制數,由于0的個數多2個,2n為偶數,故必在某一個奇數位上出現0的累計數超過1的累計數。同樣在后面部分0和1互換,使之成為由n個0和n個1組成的2n位數,即n+1個0和n-1個1組成的2n位數必對應一個不符合要求的數。顯然,不符合要求的方案數為c(2n,n+1)。由此得出
輸出序列的總數目=c(2n,n)-c(2n,n+1)=1/(n+1)*c(2n,n)。


(form 日照NOIP夏令營,by 王建德老師)  回復  更多評論
  
# re: catalan數在數據結構中的應用 2007-07-31 11:55 | etfl
問題條件MS都不太清楚,可不可以說明白一點?

比如
3.將多邊行劃分為三角形問題。
將一個凸多邊形區域分成三角形區域的方法數?

劃分線是否可以相交?如果不可以相交那結果應該是catalan數,如果可以相交那就得另當別論了。

再問一句,為什么c(2n,n)-c(2n,n+1)=1/(n+1)*c(2n,n)?  回復  更多評論
  
# re: catalan數在數據結構中的應用 2007-08-12 21:14 | binyun714
輸出前n個catalan數:
program jk;
const maxn=1000;
type arraytype=array[0..maxn] of longint;
var i,j,n:longint;

procedure mul(var h:arraytype;k:longint);
var i:longint;
begin
for i:=0 to maxn do h[i]:=h[i]*k;
for i:=0 to maxn-1 do
begin
h[i+1]:=h[i+1]+h[i] div 10;
h[i]:=h[i] mod 10
end
end;

procedure devide(var h:arraytype;k:longint);
var d,i,r:longint;
begin
r:=0;
for i:=maxn downto 0 do
begin
d:=10*r+h[i];
h[i]:=d div k;
r:=d mod k
end
end;
procedure cat(n:integer);
var i,j:integer;
h:arraytype;
begin
for i:=1 to maxn do h[i]:=0;
h[0]:=1;
for i:=3 to n-1 do
begin
mul(h,4*i-6);
devide(h,i)
end;
i:=maxn;
while (i>0) and (h[i]=0) do i:=i-1;
for j:=i downto 0 do write(h[j]);
writeln;
end;

begin
assign(input,'input.dat');reset(input);
assign(output,'output.dat');rewrite(output);
readln(n);
n:=n+2;
for i:=1 to n do cat(i);
close(input);close(output);
end.
  回復  更多評論
  
# re: catalan數在數據結構中的應用 2007-08-19 14:38 | 憂郁的魚
對于有n個節點可構成幾棵不同形態的二叉樹,可以這么考慮:
因為只有一個根節點,而且二叉樹只有左孩子或右孩子,所以可知:
當左孩子有0個節點時,右孩子有n-1個節點,可構成的不同形態二叉樹的數目為:
h(0)*h(n-1)
當左孩子有1個節點時,右孩子有n-2個節點,可構成的不同形態二叉樹的數目為:
h(1)*h(n-2)
當左孩子有2個節點時,右孩子有n-3個節點,可構成的不同形態二叉樹的數目為:
h(2)*h(n-3)
依次類推:
可知共有不同形態二叉樹的數目為:
h(0)*h(n-1)+h(1)*h(n-2)+h(2)*h(n-3)...+h(n-1)*h(0)
注:h(0)=1,h(1)=1,h(2)=2 h(3)=5  回復  更多評論
  
# re: catalan數在數據結構中的應用[未登錄] 2009-06-07 10:31 | wolf
內容有錯誤,別人又來復制,導致錯誤的事情擴大,可悲。。。  回復  更多評論
  

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美激情一区二区三区在线视频| 欧美视频在线不卡| 欧美一区免费| 亚洲在线免费| 亚洲视频狠狠| 一区二区三区产品免费精品久久75| 亚洲激情网站免费观看| 亚洲国产婷婷综合在线精品| 欧美一区二区三区日韩| 亚洲精品乱码久久久久久按摩观| 午夜久久久久久久久久一区二区| 亚洲免费一级电影| 久久国产一区| 欧美国产日产韩国视频| 国产精品一区二区三区四区| 国产精品国产三级国产普通话蜜臀| 久久激情婷婷| 欧美电影免费观看大全| 欧美午夜不卡影院在线观看完整版免费| 免费在线观看日韩欧美| 欧美gay视频激情| 国产精品亚洲综合一区在线观看| 国产又爽又黄的激情精品视频| 韩日精品视频| 香蕉久久夜色精品国产使用方法| 久久久亚洲人| 亚洲一区国产一区| 欧美一区二区三区在线视频| 欧美日韩在线播放一区二区| 国产精品成人一区| 亚洲韩国精品一区| 久久精品在这里| 亚洲一区二区三区免费在线观看| 久久亚洲图片| 亚洲激情在线观看视频免费| 欧美一级久久久久久久大片| 亚洲高清av| 欧美成人午夜激情视频| 精品99一区二区| 免费国产一区二区| 免费在线观看日韩欧美| 亚洲精品久久久久久久久久久久| 久久久999| 性久久久久久久| 伊大人香蕉综合8在线视| 久久国产精品电影| 久久国产精品网站| 亚洲在线观看视频网站| 久久精品国产99国产精品| 亚洲片在线观看| 欧美午夜视频网站| 久久精品视频一| 男女视频一区二区| 亚洲精品久久久久中文字幕欢迎你| 牛牛国产精品| 欧美午夜精品久久久久久超碰| 亚洲一品av免费观看| 欧美亚洲综合久久| 亚洲精品美女在线观看| 亚洲欧美亚洲| 这里只有精品丝袜| 久久久精品国产免大香伊| 亚洲精品资源美女情侣酒店| 亚洲永久免费av| 亚洲精品视频一区二区三区| 亚洲一二三区精品| 亚洲精品国产精品国自产观看浪潮 | 亚洲一区二区三区四区五区黄 | 欧美日韩一区三区| 久久综合色播五月| 国产精品美女久久久浪潮软件| 久久综合色一综合色88| 国产精品久久久久一区二区三区 | 欧美中文字幕在线| 欧美精品97| 亚洲区国产区| 日韩午夜在线| 亚洲一区免费看| 欧美三日本三级少妇三2023| 老司机67194精品线观看| 国产欧美一区二区精品性| 亚洲综合另类| 久久综合精品一区| 一区二区亚洲精品国产| 久久精品99国产精品| 久热国产精品视频| 亚洲福利在线视频| 欧美风情在线观看| 亚洲精品一二区| 欧美在线视频日韩| 黄色成人片子| 久久久蜜桃精品| 日韩一级大片在线| 久久国产婷婷国产香蕉| 91久久精品美女高潮| 欧美亚洲不卡| 麻豆国产精品777777在线| 99国产精品国产精品毛片| 午夜精品在线看| 99国产精品视频免费观看一公开| 欧美日本国产视频| 欧美一区二区三区免费在线看| 久久久久久尹人网香蕉| 狠狠色狠狠色综合日日五| 欧美成人在线影院| 亚洲一区影音先锋| 日韩网站在线| 欧美激情aⅴ一区二区三区| 亚洲欧美激情四射在线日 | 亚洲在线1234| 国语精品中文字幕| 国产精品综合色区在线观看| 欧美日韩亚洲高清| 欧美国产一区二区三区激情无套| 在线性视频日韩欧美| 亚洲高清免费在线| 久久久久高清| 久久久亚洲国产天美传媒修理工| 亚洲女ⅴideoshd黑人| 中文国产一区| 亚洲一区二区动漫| 亚洲一区www| 久久精品亚洲一区二区| 国产精品欧美日韩| 久久综合网络一区二区| 久久99在线观看| 久久九九全国免费精品观看| 欧美在线综合| 美女日韩在线中文字幕| 欧美精品一区二区三区蜜桃| 欧美激情亚洲国产| 国产欧美精品日韩区二区麻豆天美| 国产精品videossex久久发布| 国产精品成人播放| 国产一区二区中文| 91久久中文| 久久av红桃一区二区小说| 美女日韩在线中文字幕| 99天天综合性| 久久天堂国产精品| 国产精品久久久久久久久免费 | 亚洲婷婷综合久久一本伊一区| 亚洲深夜av| 欧美国产日产韩国视频| 午夜精品理论片| 欧美日韩中文在线观看| 91久久精品日日躁夜夜躁欧美 | 亚洲精品日本| 久久久久网站| 亚洲一区bb| 欧美日韩美女| 亚洲私人影院| 亚洲无线观看| 国产精品高清在线观看| 99精品国产热久久91蜜凸| 美女精品国产| 蜜臀91精品一区二区三区| 亚洲人成亚洲人成在线观看图片| 久久精品首页| 久久男人av资源网站| 红桃视频成人| 亚洲激情成人| 国产精品久久7| 欧美一区二区| 久久精品日韩一区二区三区| 精品91免费| 亚洲精品欧美一区二区三区| 国产日产欧产精品推荐色 | 日韩天堂在线视频| 欧美婷婷六月丁香综合色| 亚洲免费在线观看视频| 久久se精品一区精品二区| 亚洲第一区在线| 夜夜嗨av一区二区三区中文字幕| 国产精品黄色在线观看| 你懂的成人av| 国产欧美精品在线| 亚洲精品小视频在线观看| 国产字幕视频一区二区| 亚洲少妇一区| 一本色道**综合亚洲精品蜜桃冫| 亚洲婷婷在线| 亚洲美女精品久久| 免费一级欧美片在线播放| 久久久久成人精品| 国产欧美日韩亚州综合| 日韩一级大片在线| 亚洲三级免费观看| 免费亚洲电影在线| 欧美高清日韩| 欧美在线一二三区| 性欧美超级视频| 国产精品制服诱惑| 午夜精品久久久久久久99樱桃 | 一区二区三区av| 亚洲欧美日韩综合国产aⅴ| 欧美日韩中文字幕日韩欧美| 亚洲电影av| 在线综合+亚洲+欧美中文字幕| 欧美精品激情在线观看|