排列组合相关知识及组合数与杨辉三角形的关系(初学者篇)

排列组合相关知识及组合数与杨辉三角形的关系(初学者篇)

重要声明:此文面向初学者

真心推荐Typora,对于与我类似的markdown/LaTeX初学者尤其方便

进入正题:众所周知,杨辉三角形(也称“帕斯卡三角形”,后同)长这样↓

即每一项等于左上方的数加右上方的数的和

学编程的人一般看作这样↓

即每一项等于左上方的数与上方的数之和。 写个简单的递推式。

#include

const int maxn=1e4+5;

int f[maxn],n;

int main(){

scanf("%d",&n);f[1][1]=1;

for(int i=2;i<=n;i++)

for(int j=1;j<=i;j++)

f[i][j]=f[i-1][j-1]+f[i-1][j];

for(int i=1;i<=n;i++)

for(int j=1;j<=i;j++)

printf("%3d%c",f[i][j],j==i?'\n':' ');

return 0;

}

杨辉三角长啥样都知道了,那它与组合数有啥关系呢?

关系:

C

n

m

C^m_n

Cnm​的值等于杨辉三角形第n行第m个数 递推公式:

C

n

m

=

C

n

1

m

1

+

C

n

1

m

C^m_n=C^{m-1}_{n-1}+C^{m}_{n-1}

Cnm​=Cn−1m−1​+Cn−1m​

关系可以由递推公式得到。

实际上这里才进入正题

我就是来证个递推公式的 公式特写(Typora): 公式特写(Word)(感觉Word公式的效果好丑) : 代码啥的统一放后面了(因为太长了,而且突然想起没讲这玩意↓)。

C

n

m

=

n

!

m

!

(

n

m

)

!

C^m_n=\tfrac {n!}{m!\left(n-m\right)!}

Cnm​=m!(n−m)!n!​ 这个通项公式咋来的呢?

组合公式就是由排列公式去掉重复的部分得到的

C

n

m

=

A

n

m

m

!

C^m_n=\dfrac{A^m_n}{m!}

Cnm​=m!Anm​​ 以下摘自百度百科并进行了LaTeX处理:

定义及公式

排列的定义:从

n

n

n个不同元素中,任取

m

m

m(

m

n

m\le n

m≤n,

m

,

n

m,n

m,n均为自然数,下同)个不同的元素按照一定的顺序排成一列,叫做从

n

n

n个不同元素中取出

m

m

m个元素的一个排列;从

n

n

n个不同元素中取出

m

(

m

n

)

m\left(m\le n\right)

m(m≤n)个元素的所有排列的个数,叫做从

n

n

n个不同元素中取出

m

m

m个元素的排列数,用符号

A

n

m

A^m_n

Anm​表示。 计算公式:

A

n

m

=

n

(

n

1

)

(

n

2

)

.

.

.

.

.

.

(

n

m

+

1

)

=

n

!

(

n

m

)

!

A^m_n=n(n-1)(n-2)......(n-m+1)=\dfrac{n!}{(n-m)!}

Anm​=n(n−1)(n−2)......(n−m+1)=(n−m)!n!​ 此外规定0! = 1 组合的定义:从

n

n

n个不同元素中,任取

m

(

m

n

)

m\left(m\le n\right)

m(m≤n)个元素并成一组,叫做从

n

n

n个不同元素中取出

m

m

m个元素的一个组合;从

n

n

n个不同元素中取出

m

(

m

n

)

m\left(m\le n\right)

m(m≤n)个元素的所有组合的个数,叫做从

n

n

n个不同元素中取出

m

m

m个元素的组合数。用符号

C

n

m

C^m_n

Cnm​表示。 计算公式:

C

n

m

=

A

n

m

m

!

=

n

!

m

!

(

n

m

)

!

;

C

n

m

=

C

n

n

m

.

(

n

m

)

C^m_n=\dfrac{A^m_n}{m!}=\dfrac{n!}{m!(n-m)!};C^m_n=C^{n-m}_n.(n\ge m)

Cnm​=m!Anm​​=m!(n−m)!n!​;Cnm​=Cnn−m​.(n≥m)

笔者小计:

C

n

m

=

C

n

n

m

C^m_n=C^{n-m}_n

Cnm​=Cnn−m​应该属于性质公式。。。

符号:

C

C

o

m

b

i

n

a

t

i

o

n

C -Combination

C−Combination 组合数

A

A

r

r

a

n

g

e

m

e

n

t

A -Arrangement

A−Arrangement 排列数(在旧教材为

P

P

e

r

m

u

t

a

t

i

o

n

P-Permutation

P−Permutation)

N

N

u

m

b

e

r

N -Number

N−Number 元素的总个数

M

M -

M− 参与选择的元素个数

!

F

a

c

t

o

r

i

a

l

! - Factorial

!−Factorial阶乘

个人认为排列组合数的定义和公式看完上述段落应该就会了。 关于排列组合数的性质这里就不再赘述(毕竟是初学者篇),请自行查询。

Markdown+LaTeX (Used Typora): CSDN似乎不支持\begin{align},所以只能放个截图再加个代码了。。 Markdown+LaTeX代码:

$$

C^{m}_{n}=\tfrac {n!}{m!\left( n-m\right) !}\\

\begin{align}

&C_{n-1}^{m-1}+C_{n-1}^{m}\\

=&\tfrac{\left(n-1\right)!}{(m-1)![n-1-(m-1)]!}+\tfrac{(n-1)!}{m!(n-1-m)!}\\

=&\tfrac{\left(n-1\right)!}{(m-1)!(n-m)!}+\tfrac{(n-1)!}{m!(n-1-m)!}\\

=&\tfrac{m\left(n-1\right)!}{m!(n-m)!}+\tfrac{(n-m)(n-1)!}{m!(n-m)!}\\

=&\tfrac{m\left(n-1\right)!+(n-m)(n-1)!}{m!(n-m)!}\\

=&\tfrac{m\left(n-1\right)!+n!-m(n-1)!}{m!(n-m)!}\\

=&\tfrac{n!}{m!(n-m)!}\\

=&C_n^m

\end{align}

$$

Word代码:

C

n

m

=

n

!

m

!

(

n

m

)

!

C

n

1

m

1

+

C

n

1

m

=

(

n

1

)

!

(

m

1

)

!

[

n

1

(

m

1

)

]

!

+

(

n

1

)

!

m

!

(

n

1

m

)

!

=

(

n

1

)

!

(

m

1

)

!

(

n

m

)

!

+

(

n

1

)

!

m

!

(

n

1

m

)

!

=

m

(

n

1

)

!

m

!

(

n

m

)

!

+

(

n

m

)

(

n

1

)

!

m

!

(

n

m

)

!

=

m

(

n

1

)

!

+

(

n

m

)

(

n

1

)

!

m

!

(

n

m

)

!

=

m

(

n

1

)

!

+

n

!

m

(

n

1

)

!

m

!

(

n

m

)

!

=

n

!

m

!

(

n

m

)

!

=

C

n

m

欢迎挑错。

相关推荐

快捷键/指令
365bet世界杯

快捷键/指令

📅 06-30 ❤️ 821
李晨张馨予谈了多久 揭秘两人从恋爱到分手的全过程
彩票365app老版本软件下载

李晨张馨予谈了多久 揭秘两人从恋爱到分手的全过程

📅 07-01 ❤️ 567
爛的意思,爛的解释,爛的部首
彩票365app老版本软件下载

爛的意思,爛的解释,爛的部首

📅 07-25 ❤️ 350