组合数学

第6章 容斥原理及应用

6.1 容斥原理

定义

计数函数:

定理和推论

设集合 是集合S中满足性质 的所有物体的子集, , 则

6.1.1

集合 不具有性质 的物体的个数:

6.1.2

集合 至少具有性质 之一的物体的个数:

其中,第一个和对 的所有的 1 子集 进行, 第二个和对 的所有的 2 集合 进行, 依此类推

特别情况

若:

则,

6.2 带重复的组合

多重集组合与方程整数解个数

6.2 带重复的组合
回顾一下2.5

多重集 组合数等于方程

的整数解的个数。

6.3 错位排列

定义

1.

, 它的排列用 表示。错位排列是使得 的排列。用 表示错位排列个数

定理

6.3.1

性质

错位排列的递推关系
1
2

6.4 带有禁止位置的排列

定义

(1) 带有禁止位置的排列

的子集 (可以为空集),用 表示 的排列 的集合,使得:

,表示 中排列的个数。

(2) 带禁止位置的“非攻击性车”

的排列 对应于棋盘上以方格

为坐标的n个车的位置

满足第 行的车不在 中的列, ,共有多少种放置非攻击型车的方法。

定理

6.4.1

个非攻击型不可区分的车放到带有禁止位置的 的棋盘中,放法总数等于:

所以 的计算依赖于具体的问题!

  • 任意两个车不在同一行或同一列
  • 所有的 个车放置在其禁止位置上的放置方法数,
  • 的计算不考虑剩下的 个车的放置

6.5 另一个禁止位置问题

定义

相对禁止位置排列计数

的排列中没有 这些 模式出现的排列的个数

定理

6.5.1

对于

例题

旋转木马问题

看ppt去

相对禁止 与错位排列 的关系

第7章 递推关系和生成函数

生成函数(也称母函数)核心思想:

  • 把离散数列和幂级数一一对应起来,

    把离散数列间的相互结合关系对应成为幂级数间的运算关系

  • 由幂级数形式来确定 离散数列 的构造

7.1 若干数列

定义

斐波那契数列

设有数列 。如果 , 且满足递推关系
称该数列为斐波那契(Fibonacci)数列,这个数列的项称为斐波那契数

定理

7.1.1

斐波那契数 满足公式

7.1.2

沿 三角形从左下到右上的对角线上的二项式系数和是斐波那契数, 即

其中, t=

性质

斐波那契数列
斐波那契数列的项的部分和
斐波那契数是偶数当且仅当n被3整除
斐波那契数能被3整除当且仅当n可被4整除
斐波那契数能被4整除当且仅当n可被6整除
Fibonacci数列与黄金分割数

7.2 生成函数

涉及一个整数参数 的某些计数问题的代数求解方法:生成函数(母函数)

*常见展开式

对满足 的任意 ,有:

时,得:

,得:

生成函数的定义

为一无穷数列, 其生成函数 定义为:

有限数列 可以看作是无限数列

适合多重集组合

生成函数——多重集组合

求生成函数

是正整数, 等于方程

的非负整数解个数,

为多重集 组合个数, 表示在一个 组合中 出现的次数。

组合中 的出现次数有约束时,将反映到 式的第 个因子中。

求通项

把生成函数向根本形式: 化简

排列逆序

中的逆序的数目为

表示 的排列中有 个逆序的排列的数目,则:

  • 对于 ,有
  • ,有

定理

7.2.1

是正整数,则数列 的生成函数为

7.3 指数生成函数

指数生成函数的定义

数列 的指数生成函数定义为

是正整数。确定下面数列的指数生成函数:

其中, 表示 元素集合的 排列的数目,即

求数列 的指数生成函数

多重集排列

考虑由n个元素组成的多重集

其中 。从中取 排列。

,则考虑 个元素的全排列,不同的排列数为

由组合生成排列——即先选后全排列

有限重数

已知 排列数

的指数生成函数:

展开后 前的系数为:

此处:

故指数生成函数为:

定理

7.3.1

是多重集 ,其中 是非负整数。设 排列数,那么数列 的指数生成函数 为:

其中,对于 ,有

推广到无穷重数

是多重集 。设 排列数,那么数列 的指数生成函数 为:

其中:

排列中 的出现有约束时,将反映到第 个因子中

*常用展开式

7.4 求解线性齐次递推关系

定义

线性齐次递推关系

是一个数列。若存在量 和量 (每个量是常数或依赖于 的数)使得:

则称该数列满足 阶线性递推关系。
,则称该数列是 阶线性齐次递推关系。
都为常数,则称该数列是 常系数线性递推关系。

解法

本节重点讨论 常系数线性齐次递推关系

  • 特征方程法
  • 生成函数法

定理

7.4.1(特征方程法)

为一个非零数, 则 是常系数线性齐次递推关系

的解当且仅当 是多项式方程(特征方程)

的一个根。(特征根)

若多项式方程 有 k个不同的根 ,则

是下述意义下 的通解:任意给定初始值 , 都存在 使得 式是满足 $ (1)$ 式和初始条件的唯一的数列。

7.4.2(通解)

为常系数线性齐次递推关系:

的特征方程的互异的根

如果 的特征方程的 重根,那么该递推关系的通解中对应于 的部分为:

且该递推关系的通解为:

7.4.3

为满足 阶常系数线性齐次递推关系:

的数列, 则它的生成函数 形如:

其中,
是具有非零常数项的 次多项式,
是小于 次的多项式。
反之, 给定这样的多项式 , 则存在序列 满足 式的 阶常系数线性齐次递推关系, 其生成函数由 式给出.

方法

特征方程法

详见定理7.4.1、7.4.2

特征方程有重根

定理7.4.1不适用于特征方程有重根的情况

生成函数法

(1)利用递推关系求出序列的生成函数: ,其中, 的多项式,而 是常数项等于 1 的 阶多项式;
(2)用部分分式法,把 表示为如下代数分式的和:
(3)利用牛顿二项式展开 ,并把所有项求和,得到生成函数的幂级数。

  • 如何得到生成函数:

    • 先设出生成函数的通项
    • 利用递推关系加减消除法到只剩初始项
      • 加减消除法的系数为递推关系的系数!!!
      • 最终是含 项系数尽量为
  • 牛顿二项式:

    • 如果 是正整数,而 是非零实数, 时,则有

联系

设特征方程为 ,生成函数

设相应特征方程 ,其中

不想写了,详见PPT~~~

小结

利用特征方程求解常系数线性齐次递推关系:

  • 写出相应的特征方程
  • 求解特征方程
    • 如果没有重根,则直接给出通解(定理7.4.1)
    • 如果有重根,根据重根求出通解(定理7.4.2)
  • 将初始条件代入通解,得到满足初始条件的解

利用生成函数求解:使得 前的系数为

7.5 非齐次递推关系

定义:

对于常系数线性递推关系

,则称该递推关系为常系数线性非齐次递推关系。

汉诺塔问题

递推关系
迭代求解

就嗯迭代

但是迭代完了一定要数学归纳法证明结果的正确性

通解

生成函数法

不一定可行,若 为带 的多项式则可能出问题。

特征方程法

假设有非齐次递推关系

是对应齐次递推关系

的通解, 而 是原非齐次递推关系(1)的一个特解,
那么: 是原非齐次递推关系(1)的通解。

小结
  1. 求对应的齐次递推关系的通解;
  2. 求该非齐次递推关系的一个特解;
  3. 将一般解和特解结合得到该非齐次递推关系的
    通解;
  4. 通过初始条件确定通解中出现的常系数值.

难点:

  • 特征方程求解
  • 找出一个特解

尝试特解的方法:

根据非齐次项 来尝试某些类型的特解(不绝对):

  • 如果 次多项式,尝试 也是 次多项式

    • , 尝试
    • , 尝试
    • , 尝试 $ hn = rn^2+sn+t (r, s, t是常数) $
  • 是指数形式,尝试 也是指数形式。

如:

不对,则可以尝试

7.6 一个几何例子

定义

定义1

设有平面或空间中的点集 , 若 中任意两点 的连线上的所有点都在 内,称 是凸集

定理

定理7.6.1

表示用下面方法把凸多边形区域分成三角形区域的方法数:
在有 条边的凸多边形区域内通过插入不相交的对角线,而把它分成三角形区域。
定义
满足如下递推关系:

该递推关系解为:

其中: 为 Catalan数