您的位置:首页 > 其它

课程学习-组合数学

2015-10-07 15:14 861 查看
现主要记录新学习的东西。

1.圆排列

从n个中取r个的圆排列的排列数为P(n,r)/r , 2≤r≤n。

2.多重全排列

乒乓球入洞游戏:共有6个洞,洞口每次每次只能进入一个乒乓球,一组编号为1-9的9个乒乓球滚入洞口的方案有多少?

可以理解为六个洞=5个隔板分为留个空间,加上9个球一共14个待排列的项,14!.然后5个隔板是相同的,再除以5!.因此总共14!/5!.

3.可重组合

可重组合模型:取r个无标志的球,n个有区别的盒子,每个盒子允许放多于一个球,或者空盒。

组合数C(n+r-1,r)。记住是r个球,n个有区别的盒子。

4.不相邻组合

不相邻的组合是指从A={1,2,…n}中取r个不相邻的数进行组

合(不可重),即不存在相邻的两个数j, j+1的组合

共C(n-r+1,r)种组合方式

例 某保密装置须同时使用若干把不同的钥匙才能打开。 现有7人,每人持若干钥匙。须4人到场,所备钥匙才能 开锁。

• 问①至少有多少把不同的锁?

• ②每人至少持几把钥匙?

分析:由于4个人到场才能开锁,因此任意三个人都凑不出一把完整的钥匙,C(7,3) = 35把钥匙。

任意4个人都不缺钥匙,任一人对于其他6人中的每3人,

都至少有1把钥匙与之相配才能开锁。

所以每人至少:C(6.3) = 20把钥匙。

5.字典序的下一个

839647521的下一个。

从后往前找,第一个下降的的数是4,与后面最小大于它的数5交换->839657421,然后将5之后的数按照递增排列即839651247.

6.一个题,我做出来了,但是不是很清楚答案的方法

8个人排队买票,4个人拿着10元,4个人拿着20元,票价10元,售票处一开始没有钱,请问能够顺利买票的排队方案数。

令n=4,假定用2n维0,1向量来表示一种排队状态,令该向量为(a1a2…a2n),其中ai=0,1,i=1,2,…,2n,ai=1表示第i位顾客持10元的票款,ai=0表示第i位顾客持20元的票款。

这样有n个0元素,n个1元素的向量,共有C(2n,n)个。

每一个向量可以和从(0,0)点到达(n,n)点的路径一一对应,即从(0,0)点出发,ai=0表示沿x轴走了一个单位, ai=1表示沿y轴走了一个单位。为了保证顾客能顺利地买到票,不出现找不出10元的情况,路径上各点必须满足x≤y的情况。



问题等价于求从(0,0)点到(n,n)点的路径中,不穿越y=x线的数目,根据上面描述,可知x≤y。我们这样来想,将y=x向右平移一个单位,得到x-y=1,则原来对应的路线都不穿过x-y=1这条直线,如果原来的路径穿过了x=y,则也穿过了x-y=1。对每一条穿过x-y=1的路径,做(0,0)点到第一个接触点关于x-y=1的对称格路,得到一条从(1,-1)到达(4,4)的格路。从(0,0)到达(4,4)的穿过x=y格路与从(1,-1)到达(4,4)的格路(必穿过x-y=1)一一对应,是必须穿过x-y=1这条线的,所以通过减法法则,可知满足条件的路径条数为:

C(2n,n)−C(2n,n−1)=C(8,4)−C(8,3)=14

又排队买票的人是不同的,所以排队方案数是14x4!x4!=8064。

我摔!到最后居然是卡特兰数。。前几天看数据结构刚刚看到的,贴一下详细证明过程的链接吧。

http://blog.csdn.net/super_chris/article/details/6113779
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: