逻辑,集合,映射与计数

1.逻辑

命题:能够判断正确或错误的叙述。

复合命题:若p,则q

设原命题为若p,则q,则:

  • 1.逆命题:若q,则p
  • 2.否命题:若¬p,则¬q
  • 3.逆否命题:若¬q,则¬p

其中原命题与逆否命题等价,逆命题与否命题等价。

条件:

pq ,则 pq 的充分条件,qp 的必要条件。

p是q的充分不必要条件 pqqp
p是q的必要不充分条件 pqqp
p是q的充要条件 pqqp
p是q的既不充分也不必要条件 pqqp

量词:

  • 1.全称量词:任意,符号为
  • 2.存在量词:存在,符号为

eg1.xR,f(x)>k

很典型的题目,可以转化为max(f(x))>k

eg2.xR,f(x)>k

存在一个x满足条件即可,转化为min(f(x))>k

2.集合,元素

  • 1.集合元素的三个特征:无序性,互异性,确定性
  • 2.元素与集合之间的关系是属于或不属于,用表示
  • 3.常见的集合记法:
集合 自然数集 正整数集 整数集 有理数 实数集
符号 N NN+ Z Q R

ps:在符号上加,+的上下标通常表示正的部分

集合与元素间的基本关系

a属于集合A,记作aA,若a不属于集合A,记作aA

集合与集合间的基本关系

子集:

集合A包含于集合B(集合A是集合B的子集),记作AB,也可以记作BA
下面我们用数学语言解释AB
xA,均有xB
从这条解释可以看出AB可以得出xAxB的充分条件,xBxA的必要条件
Venn图:
image

真子集:

集合A是集合B的子集,且集合B中至少有一个元素不在集合A
Venn图:
image

集合相等:

如果有ABBA,称A=B
Venn图:
image

集合与集合间的基本运算

集合的并集:

image
图像(黄色部分):
image
n个集合A1,A2....An的并集可以记作i=1nAi

集合的交集:

image
图像:
image
n个集合A1,A2....An的交集可以记作i=1nAi

集合的补集:

要谈补集,我们首先要钦定一个全集U,U里包含了所有讨论的元素。
image
图像:
image

集合相乘:

就是笛卡尔积,没什么好说的。
image

幂函数:

2A={A的所有子集}

集合的运算律:

  • 1.A(BC)=(AB)(AC)

证明:

xA(BC)

<1>若xA,则x(AB),x(AC)

x(AB)(AC)

<2>若x(BC),则xB,xC

x(AB),x(AC)

x(AB)(AC)

综上,A(BC)(AB)(AC)

x(AB)(AC)

xA

xA(BC)

(AB)(AC)A(BC)

(AB)(AC)=A(BC)


  • 2.A(BC)=(AB)(AC)

证明:

xA(BC)

xA,x(BC)

xA,xB,xC

x(AB)(AC)

A(BC)(AB)(AC)

x(AB)(AC)

<1>x(AB)

xA,xB

x(BC)

xA(BC)

<2>x(AC)

xA,xC

x(BC)

xA(BC)

综上,(AB)(AC)A(BC)

(AB)(AC)=A(BC)

映射

A,B两个非空集合,若果按照某种确定的对应关系f,使得对于集合A中任意的一个元素x,在集合B中都有唯一确定的元素f(x)与之对应,称为f:AB

f:AB中,x的取值范围A为映射的定义域,f(x)x在映射f下的象集合f(x)={f(x)|xA}

单射:

若对于x1A,x2A,均满足f(x1)f(x2),称映射f为单射。

满射:

f(A)=B,则称映射f为满射。

一一对应:

若映射f,既是单射也是满射,称映射f为一一映射,存在f1:BA(反函数),使得:

  • 1.xA,均有f1(f(x))=x
  • 2.yB,均有f(f1(y))=y

构造映射:

eg1.构造一个一一映射f:整数集偶数集

xZ,f(x)=2×x

eg2.构造一个一一映射f:正整数集整数集

f(1)=0,f(2)=1,f(3)=1......

eg3.构造一个一一映射f:正整数集有理数集

这个对应有点难度,先自己想一想。
先把0单独考虑,现在每一个有理数可以对应一个最简分数$\frac{p}{q} ,(p,q)$,放到直角坐标系中,形成下图(先只考虑大于0的有理数):
image
我们从(1,1)开始,蛇行向上对应,如果不是最简分数就跳过:
image
怎么对应负有理数呢,一正一负就行了。

eg4.是否能构造一个一一映射f:正整数集实数集

先自己试着构造试试。
不难发现根本不可行,下面是证明:
反证法:
若{a1,a2,......,an,......}=R
取一个实数x使得:
image

其中biai的第i位小数。显然xa1,xa2,.....xR,与条件矛盾。

应用:

  • 1.Cnk=n!k!(nk)!
    首先有Ank=n!(nk)!
    试图构造一个从AnkCnk的映射,发现有很多个排列对应一个组合。
    排列的长度是k,那么自然有k!个排列对应一个组合,所以组合数的公式是AnkAkk=n!k!(nk)!
  • 2.Cnk=Cnnk
    很好理解。当然你可以列出这两个的公式也可以构造一一对应(对应补集)
  • 3.Cn0+Cn1+....+Cnn=2n
    你考虑这其实就是子集个数。

实际应用:

eg1.1000瓶药水中有一瓶有毒,每次可以取出若干瓶药水混合在一起检验是否有毒。问找到有毒的药水至少需要多少次操作。

这个问题的答案其实不难,10次,但是包含了一些思想。


二分法:最简单的方案,有一个问题,每次操作依赖于前一次操作的结果,若果等待前一次结果的时间很长,这就不是理想的方案。


二进制法:给每一瓶药水二进制编号,不会超过10位,第i次操作取二进制从前往后第i位为1的药水一起检验,10次的结果有毒记为1,无毒记为0,把这十个数字放在一起形成一个二进制数,对应会编号即可。正确性是显然的


更深入一点思考为什么至少要进行10次操作,我们其实是在建立每一组操作结果与有毒药水编号之间的一一对应,假设进行9次操作,只有512个操作结果,无法一一对应1000个药水编号

计数

容斥原理

忘记介绍一种符号了,|A| 代表A集合中的元素个数。
容斥原理的内容:|i=1nAi|=i=1n|Ai|1<=i<j<=n|AiAj|+......+(1)n1|A1A2......An|

证明:
xi=1nAi在等式左边计算一次
xAi1,xAi2,......,xAik,令Sx在右式的计算次数,则:
S=Ck1Ck2+......+(1)kCkk
根据二项式定理:(1+y)k=Ck0+Ck1×y+......+Ckk×yk
y=1,得:0=1S,S=1
x在等式右边被计算一次,等式成立。

错排

通项:

根据容斥,错排的个数是全排列减去一个位置对的加上两个位置对的......
即:n!Cn1×(n1)!+Cn2×(n2)!+......+(1)n1Cnn
=i=0n(1)!×Cni×(ni)!
=i=0n(1)!×n!i!(ni)!×(ni)!
=i=0n(1)!×n!i!
=n!×i=0n(1)!×1i!
ex=1+x2!+x23!......,此时令x=1
ex=112!+13!......,和错排的公式谜之相似,只不过是无限项,误差小于1n+1
记录n个数的错排数为Dn,Dnn!e

递推:

Dn=(n1)(Dn2+Dn1)
我们假设1对应2(其他也是一样的,×n1就好了),那么面临两种情况:

  • 1.2对应1
    此时后面的数形成一个n2的错排
  • 2.2不对应1
    这时后面总有一个数k对应1,令k对应2,对结果没有影响,这时形成一个n1的错排

数字和固定的五位数

原问题:

数字和为6的五位数共有多少个?

很经典的插板法,记这个五位数为abcde
由题:a+b+c+d+e=6,此时b,c,d,e可以为0,每一个加上1,新的数是a(b+1)(c+1)(d+1)(e+1)
a+(b+1)+(c+1)+(d+1)+(e+1)=10,插板法就可以(不可能分出来一个10以上的数),答案是C94
趁机推销自己的插板法博客:组合数学初步

change 1:

数字和为40的五位数共有多少个?
abcde(10a)(10b)(10c)(10d)(10e),然后老操作,还是C94

差分:

定义hn=hn+1hn
不难看出若xn,2hx=0(先差分一次,再在差分数组上差分一次),{hn}为等差数列。
同样的,若xn,3hx=0,{hn}为平方数数列。
更进一步的,我们发现每进行一次差分,原式的次数减一。
差分的优美性质还在于是线性算子:
(an+bn)=an+bn

posted @   星河倒注  阅读(147)  评论(2编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示