组合数学 - 例题:求子集的个数

组合数学 - 例题:求子集的个数

问题:设集合元素个数为n,求子集的个数。

解1:集合元素选择法

根据集合论基本定理,每个元素都有「存在」和「不存在」两种状态,通过乘法原理可得总数为 2n2^n2n

推导过程

首先讨论集合 {a} 的情形,它的子集为 ∅、{a},即 a 存在和不存在的两个情形,子集的总数为 21=22^1=221=2 个。

然后讨论集合 {a,b} 的情形,它的子集为 ∅、{a}、{b}、{a,b},即对于每个{a} 的子集,我们分别考虑 b 存在和不存在的两个情形。例如对于集合 {a} 的子集 {a} ,元素 b 有存在和不存在的两个情形,分别为 {a}、{a,b}。因此,根据乘法原理,子集的总数为 22=42^2=422=4 个。

推广到n元素 :每个元素有2种选择,总选择方式为 2×2×⋯×2⏟n个=2n\underbrace{2 \times 2 \times \cdots \times 2}_{n个} = 2^nn2×2××2=2n

解2:组合数求和法

解题思路
对于一个元素个数为nnn 的集合,求其所有子集的个数可以通过计算不同元素个数的子集数量之和得到。具体来说:

  • 包含000 个元素的子集个数为Cn0C_{n}^0Cn0,即从nnn 个元素中选000 个元素的组合数,只有一种情况,就是空集∅\varnothing
  • 包含111 个元素的子集个数为Cn1C_{n}^1Cn1,即从nnn 个元素中选111 个元素的组合数。
  • 包含222 个元素的子集个数为Cn2C_{n}^2Cn2,即从nnn 个元素中选222 个元素的组合数。
    -⋯\cdots
  • 包含nnn 个元素的子集个数为CnnC_{n}^nCnn,即从nnn 个元素中选nnn 个元素的组合数,只有一种情况,就是原集合本身。

计算过程
所有子集的个数就是这些不同元素个数的子集数量之和,即:
∑k=0nCnk=Cn0+Cn1+Cn2+⋯+Cnn \sum_{k = 0}^{n}C_{n}^k=C_{n}^0 + C_{n}^1+C_{n}^2+\cdots+C_{n}^n k=0nCnk=Cn0+Cn1+Cn2++Cnn

根据二项式定理(a+b)n=∑k=0nCnkan−kbk(a + b)^n=\sum_{k = 0}^{n}C_{n}^k a^{n - k}b^{k}(a+b)n=k=0nCnkankbk

a=b=1a=b = 1a=b=1 时,有(1+1)n=∑k=0nCnk×1n−k×1k(1 + 1)^n=\sum_{k = 0}^{n}C_{n}^k\times1^{n - k}\times1^{k}(1+1)n=k=0nCnk×1nk×1k

2n=∑k=0nCnk2^n=\sum_{k = 0}^{n}C_{n}^k2n=k=0nCnk

所以,元素个数为 nnn 的集合的所有子集个数为2n2^n2n

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值