族谱网 头条 人物百科

组合

2020-10-16
出处:族谱网
作者:阿族小谱
浏览:642
转发:0
评论:0
理论与公式从n{displaystylen}个元素中取出k{displaystylek}个元素,k{displaystylek}个元素的组合数量为:以六合彩为例。在六合彩中从49颗球中取出6颗球的组合数量为:在集合中取出k项元素在有五个元素中的集合中,取出3个元素,形成的子集合重复组合理论与公

理论与公式

从 n {\displaystyle n} 个元素中取出 k {\displaystyle k} 个元素, k {\displaystyle k} 个元素的组合数量为:

以六合彩为例。在六合彩中从49颗球中取出6颗球的组合数量为:

在集合中取出k项元素

组合

  在有五个元素中的集合中,取出3个元素,形成的子集合

重复组合理论与公式

从 n {\displaystyle n} 个元素中取出 k {\displaystyle k} 个元素, k {\displaystyle k} 个元素可以重复出现,这组合数量为:

以取色球为例,每种颜色的球有无限多颗,从8种色球中取出5颗球,好比是在5颗球间画上分隔号“|”代表球色的分布情形。例如第1种色球取1颗,第2种色球取2颗,第3种色球取2颗可以表示成:

可以理解为8类球每类取多少个,一起构成5个球。我们把5个球排成一排,用7个分隔线去隔开。如上图,表示含义:第1根线前表示第一类球取的个数,第1根和第2根线表示第二类球取的个数...第6第7根线前表示第七类球的个数,第7根后表示第八类球的个数。亦即问题是从(5+8-1)个位置中挑选出(8-1)个位置摆分隔号,这组合数量为:

因为组合数量公式特性,重复组合转换成组合有另一种公式为:

另外 H k n {\displaystyle H_{k}^{n}} 也可以记为 F k n {\displaystyle F_{k}^{n}} 或 ( ( n k ) ) {\displaystyle \left(\!\!{\binom {n}{k}}\!\!\right)}

取值范围的扩充

在 C k n {\displaystyle C_{k}^{n}} 的定义中,由于它有意义的范围必须是满足条件 n ≥ ≥ --> k ≥ ≥ --> 1 {\displaystyle n\geq k\geq 1} ,所以其他范围必须另外定义,我们有:

演算范例

组合 C

循环法

/***********************//** This is C++ code. **//** Comb Example **//***********************/#includeusingnamespacestd;boolnext_comb(int*comb,constintn,constintk){inti=k-1;constinte=n-k;docomb[i]++;while(comb[i]>e+i&&i--);if(comb[0]>e)return0;while(++i<k)comb[i]=comb[i-1]+1;return1;}intmain(){intn,k;cout<<"comb(n,k):"<>n>>k;if(n<k||k<=0)return0;int*comb=newint[k];for(inti=0;i<k;i++)comb[i]=i;dofor(inti=0;i<k;cout<<((++i<k)?",":"\n"))cout<<comb[i]+1;while(next_comb(comb,n,k));delete[]comb;return0;}

递回法

#include#includeusingnamespacestd;namespacecomb{intn,k;intarr[12];intcount;boolarrsame(intsite){if(site>0&&arr[site-1]>=arr[site])return0;return1;}inlinevoidarrprint(){for(inti=0;i<k;i++)printf("%3d",arr[i]);puts("");count++;}voidcalculate(intnow){if(now==k){arrprint();return;}for(inti=0;i<n;i++){arr[now]=i;if(arrsame(now)){calculate(now+1);}}}inlinevoidrun(intnn,intkk){n=nn,k=kk;count=0;if(k=k&&k>0)calculate(0);if(count)printf("\n%d combination.\n\n",count);elseputs("Input error!");}}intmain(){intn,k;while(scanf("%d%d",&n,&k)!=EOF){comb::run(n,k);fflush(stdout);}return0;}

重复组合 H

循环法

/***********************//** This is C++ code. **//** ReComb Example **//***********************/#includeusingnamespacestd;boolnext_re_comb(int*recomb,constintn,constintk){inti=k-1;dorecomb[i]++;while(recomb[i]>n-1&&i--);if(recomb[0]>n-1)return0;while(++i<k)recomb[i]=recomb[i-1];return1;}intmain(){intn,k;cout<<"recomb(n,k):"<>n>>k;if(n<=0||k<=0)return0;int*recomb=newint[k];for(inti=0;i<k;i++)recomb[i]=0;dofor(inti=0;i<k;cout<<((++i<k)?",":"\n"))cout<<recomb[i]+1;while(next_re_comb(recomb,n,k));delete[]recomb;return0;}

递回法

#include#includeusingnamespacestd;namespacere_comb{intn,k;intarr[12];intcount;boolarrsame(intsite){if(site>0&&arr[site-1]>arr[site])return0;return1;}inlinevoidarrprint(){for(inti=0;i<k;i++)printf("%3d",arr[i]);puts("");count++;}voidcalculate(intnow){if(now==k){arrprint();return;}for(inti=0;i<n;i++){arr[now]=i;if(arrsame(now)){calculate(now+1);}}}inlinevoidrun(intnn,intkk){n=nn,k=kk;count=0;if(k0)calculate(0);if(count)printf("\n%d combination.\n\n",count);elseputs("Input error!");}}intmain(){intn,k;while(scanf("%d%d",&n,&k)!=EOF){re_comb::run(n,k);fflush(stdout);}return0;}

推广

组合数可以推广到多分类的情形 ,我们将n个物品分为m份,每份的个数分别为: k 1 , k 2 ⋯ ⋯ --> k m {\displaystyle k_{1},k_{2}\cdots k_{m}} 个,那么,总的分类数为

参见

概率论

组合数学


免责声明:以上内容版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。感谢每一位辛勤著写的作者,感谢每一位的分享。

——— 没有了 ———
编辑:阿族小谱
发表评论
写好了,提交
{{item.label}}
{{commentTotal}}条评论
{{item.userName}}
发布时间:{{item.time}}
{{item.content}}
回复
举报
点击加载更多
打赏作者
“感谢您的打赏,我会更努力的创作”
— 请选择您要打赏的金额 —
{{item.label}}
{{item.label}}
打赏成功!
“感谢您的打赏,我会更努力的创作”
返回

更多文章

更多精彩文章
打赏
私信

推荐阅读

· 投资组合
相关投资证券投资基金财务管理个人理财强积金VaRREITs投资策略、投资心法外参考投资组合相关论文名词中英对照
· 线性组合
定义S{\displaystyleS}为一向量空间V{\displaystyleV}(附于体F{\displaystyleF})的子集合。如果存在有限多个向量属于S{\displaystyleS},和对应的标量a1,a2,⋯⋯-->,ak{\displaystylea_{1},a_{2},\cdots,a_{k}}属于F{\displaystyleF},使得v=a1v1+a2v2+a3v3+⋯⋯-->+anvn{\displaystylev=a_{1}v_{1}+a_{2}v_{2}+a_{3}v_{3}+\cdots+a_{n}v_{n}},则称v{\displaystylev}是S{\displaystyleS}的线性组合。规定:0{\displaystyle0}向量是空集合的线性组合。线性生成S为域F上向量空间V的子集合。所有S的有限线性组合构成的集合,称为S所生成的空间...
· 三国搞笑组合
一、长青组──黄忠、严颜感言:严颜:「真不好意思,年纪都这么一大把了才……」黄忠:「谁说我们老了?我们的青春正燃烧,去吧!白色的明天等着我们!呵呵……」二、猛男组──关羽、张辽感言:张辽:「虽说江南的小孩子听到我的名字,就不敢哭,但是其实我是很喜欢小孩的。」关羽:「只要不吵我读春秋,你要养几个都可以。」三、梦幻组──孙策、周瑜赵云、诸葛亮感言:周瑜:「赤壁之战虽然打赢了,却丢了四郡,真是对不起!」孙策:「不要紧,从你薪水里面扣就好了。(是大乔逼我这样说的)」孔明:「我叫主公不要带士卒一面布阵一面跳健康操,他就是不听,结果被陆逊火烧七百里连营……呜,能听我哭诉的只有子龙啊」赵云:「丞相不哭……。」(虽然我也很想哭!什么梦幻组,我们根本是相依为命组!)四、建设组──刘备、诸葛亮曹操、郭嘉感言刘备:「为什么不能跳健康操?」孔明(已经放弃了):「算了,当我没说。」刘备:「我觉得痞子逛大街的舞步也不...
· 男子音乐组合
历史马瑞斯·史达(MauriceStarr)和NewKidsontheBlock通常被认为是开创起男子音乐组合潮流的先锋,虽然当时“Boyband”这个名词还不存在。史达的想法是将当时节奏蓝调的原型利用到在流行音乐中。这个模式后来被一些欧洲的经纪人例如尼加·马丁-史密斯(NigelMartin-Smith)和路易·华许重新定义、并且占据当时的英国流行音乐市场。猴子男孩(TheMonkees)一般被认为是第一个男子音乐组合。电视节目制作人伯特·史耐德(BertSchneider)和(BobRafelson)找了四位歌手演唱了一些容易上口的流行音乐和在演出电视剧。猴子男孩成立于1965年并在1970年解散、而“猴子男孩”这四个字后来也常被用来形容成立于1990年代前的男子音乐组合。披头四、海滩男孩(TheBeachBoys)和诱惑(TheTemptations)、以及1960年代的比吉斯(Th
· 三国搞笑组合
感言:严颜:“真不好意思,年纪都这么一大把了才……”黄忠:“谁说我们老了?我们的青春正燃烧,去吧!白色的明天等着我们!呵呵……”二、猛男组──关羽、张辽感言:张辽:“虽说江南的小孩子听到我的名字,就不敢哭,但是其实我是很喜欢小孩的。”关羽:“只要不吵我读春秋,你要养几个都可以。”三、梦幻组──孙策、周瑜赵云、诸葛亮感言:周瑜:“赤壁之战虽然打赢了,却丢了四郡,真是对不起!”孙策:“不要紧,从你薪水里面扣就好了。(是大乔逼我这样说的)”孔明:“我叫主公不要带士卒一面布阵一面跳健康操,他就是不听,结果被陆逊火烧七百里连营……呜,能听我哭诉的只有子龙啊”赵云:“丞相不哭……。”(虽然我也很想哭!什么梦幻组,我们根本是相依为命组!)四、建设组──刘备、诸葛亮曹操、郭嘉感言刘备:“为什么不能跳健康操?”孔明(已经放弃了):“算了,当我没说。”刘备:“我觉得痞子逛大街的舞步也不错。”孔明(完全放弃了)...

关于我们

关注族谱网 微信公众号,每日及时查看相关推荐,订阅互动等。

APP下载

下载族谱APP 微信公众号,每日及时查看
扫一扫添加客服微信