当前课程知识点:组合数学 > 组合之美 > 组合之美 > 组合之美之计数
同学们好
非常高兴和大家在一起相聚去
学习组合数学
这节课我们的课程题目被称为
是组合之美
我们已经经历了八周的学习
我们基本上把组合数学的
基本概念知识
都给大家介绍了
这节课就把所有的知识给
大家回顾一下
但是提起组合之美
大家是不是觉得这个模式很熟悉啊
对啊
我们现在有很多书被叫做
什么什么之美
比如说这一本
这本书是被称为是
微软计数 面试心得
它的题目 就是编程之美
而组合
知道是编程的最最基础的理论知识
这节课我们就带领大家去感受一下
组合之美和编程之美
我们先从我们的一道作业题说起
大家回顾一下
在第二周的有一道题目
是这样问大家的
请问
在小于一万的所有的正整数中
有多少个数字包含一
它还有第二问
也就是说
小于一万的所有的正整数中
有多少个数字包含零
这道题如果大家做过以后会发现
实际上我们就用的计数的基本法则
而无独有偶
在编程之美里面
在它的2.4小节中
也有类似的一道题目
它问到
如果我把数字从一到N全部
都列出来
比如说一二三四五六
那在这所有的列出的六个数字中
一出现了几次呢
我刚才说到
如果是一二三四五六的话
一只出现了一次
那么如果是一到十二呢
一二三
四五六
七八九
十
十一
十二
这时候
我们会发现这里所有的
一的次数一共出现了五次
就是这样一道题
我们看着好像复杂了很多
但是
其实它的思路还是运用着加法法则
和乘法法则
提起加法法则 和乘法法则
就是计数中最最基本的规则
理解起来很容易
比如说对于两个集合来说
如果它们之间是没有任何交集的话
A和B交集为空
那么它们一共的个数就应该是
A的个数加上B的个数
这实际上分步分类在加法法则
和乘法法则中
在加法法则对应的就是分类的思想
而在乘法法则呢
我们曾经举个例子
比如说
你要从A城市到B城市
再从B城市到C城市
经过两步操作
那么它所有的方案数
就应该是第一步的方案乘以
第二步的方案
说起来这两个规则是非常简单的
那么我们就看一下我们的作业题
该如何运用加法法则和乘法法则呢
现在呢
我们就来看一下这道例题
先看第一问
求小于一万的含一的正整数的个数
这时候我们就会想要用到的
就是加法法则和乘法法则
那这时候
我们先看小于一万它自然
它就是一个不大于
一万的一个四位数了
尤其它是个正整数
因此呢
我们可以看
它就是一个不含先看正整数是
四位的
而首先它说是要去算含有一的
这时候如果挨个挨个去数的话
会非常复杂
我们不如反过来看
是不是可以先看不含有一的呢
不含有一的
正整数的四位数一多少个
当然我们首先想
是正整数零零零零
它是一个四位数
但它不是正整数
我们可以先说
计算一下小于一万的不含有
一的正整数一共有多少个
自然它就每位应该有九个选择
四位一共是九乘九
再乘九
再乘以九
当然还要刨掉一个零零零零
因此它的个数就应该是6560
这个数字算出来的呢
实际上是对应于小于一万的
没有一的正整数的个数
而我们题目要求的是小于
一万含有一的
因此用所有的四位数的正整数的
个数9999减去刚才算出来的
不含有一的数目
6560
得到的答案就是含有一的
个数一共是3439个
那么这时候我们就发现
全部四位数一共有十的四次方个
不含有一的数字有九的四次方个
那么含有一的四位数是
两个数字之差
可以这样来计算
十的九次方
减去九的四次方
是3439个
因此我们如果从另外一个角度来看
不考虑0000
直接按四位数来算
同样得到的同样的答案
那么回头 我们再看第二问呢
小于一万的含有零的正整数个数
大家可能会想
含一和含零有什么区别呢
实际上
零在数字上的位置是非常有意义的
比如说
0012在正整数来说
它实际上就是12
所以我们要考虑0和1
实际上并不对等
含0和含1是不能直接进行套用的
0019
我们算它是含有一的
但是呢
它实际上在数字中只是19
它实际上是不含有零的
因此回头发现
组合数学中有些题目虽然
看着非常非常相似
其实有很多的隐含的规定
一定要留意
我们这时候想一想
直接用加法的法则
比如说我们不是说对应于
带零的前面有可能位数
不能补齐的情况下
它可以分为是一位数
两位数
三位数
四位数
就求不含有零的一位数
有九个
而不含有零的两位数应该是
九平方个
而不含有零的三位数应该是
九的三次方个
四位数是九的四次方个
依次我们就可以算出
不含有零而在小于一万的正整数
一共应该等于九加
九平方加九的三次方
加九的四次方
计算出来是7380个
因此可以看到
我们实际上含零和含一
确实答案是不一样的
这时候我们就说了
对应于含零小于一万的
正整数个数就应该是9999
减去刚才算出来不含有零的个数
7380得到答案是2619个
-什么是组合数学
--什么是组合数学
--讨论题
-最精巧的排列——幻方
--幻方
-漫谈组合数学--最精巧的排列——幻方
-苦难的羊皮纸卷
--羊皮纸卷
-苦难的羊皮纸卷--作业
-你的手机密码安全吗
-漫谈组合数学--你的手机密码安全吗
-暴力枚举和抽象转换
--世界杯引出的问题
--世界杯引出的问题--练习
--一一对应
--七桥问题
--小结
--讨论题
-大家谈组合数学(1)
--采访武永卫老师
-第一周作业
--作业说明
--H
--U
--G
--作业讨论区说明
-第一周演示程序
--程序讨论区说明
--幻方生成器
--换方计数
--屏幕解锁方案数
--欧拉路计数
--共享程序
-加减乘除来计数
--计数的基本法则
-排列还是组合
--排列还是组合
--小乒乓球的组合之旅--排列还是组合
-各种各样的排列
--圆排列和项链排列
--圆排列和项链排列--习题
--多重排列
--多重排列--练习
-多样的组合
--可重组合
--不相邻组合
--小乒乓球的组合之旅--多样的组合
-钟声里的全排列
--钟声里的全排列
--钟声里的全排列
--字典序法
--SJT算法
-第二周作业
--H
--U
--G
--思考题
--公式测试
--作业讨论区说明
-第二周演示程序
--程序讨论区说明
--全排列生成
--组合生成器
--共享程序
-参考资料:Stirling估计式
-母函数是函数的母亲吗
--母函数的定义(1)--练习
--母函数的定义(2)--练习
-母函数的简单应用
--初识母函数--母函数的简单应用
-整数拆分
--整数拆分(1)
--整数拆分(2)
-Ferrers图像
--Ferrers图像--作业
-母函数与递推关系
--母函数能做什么
--偶数个5怎样算
--母函数小结
-大家谈组合数学(2)
-第三周作业
--H
--U
--G
--思考题
--作业讨论区说明
-第三周演示程序
--程序讨论区说明
--整数拆分
--汉诺塔
--共享程序说明
-Fibonacci数列
--线性常系数递推关系--Fibonacci数列
-Fibonacci数列的应用
--桌布魔术
--桌布魔术--练习
--艾略特波浪曲线
-线性常系数齐次递推关系
--定义
--特征多项式
--线性常系数递推关系--线性常系数齐次递推关系
-说“数”解题
-第四周作业
--H
--U
--G
--GT思考题
--作业讨论区说明
-第四周演示程序
--程序讨论区说明
--程序共享说明
-爆笑花絮
--爆笑花絮
-参考资料:K线分析中的Fibonacci 相关理论
-Catalan数
--计算机界的精灵
--神奇的序列--Catalan数
-指数型母函数
--指数型母函数
--神奇的序列--指数型母函数
-错排
--错排1
--错排2
--神奇的序列--错排
-Stirling数
--神奇的序列--Stirling数
-母函数小结
--母函数小结
-大家谈组合数学(3)
-第五周作业
--H
--U
--G
--思考题
--作业讨论区说明
-第五周演示程序
--讨论区说明
--Catalan数
--程序共享
-且容且斥
--容斥原理
--容斥原理的证明
--容斥原理和鸽巢原理--且容且斥
-容斥原理的精妙
-回忆过去,容斥新解
--容斥原理和鸽巢原理--回忆过去,容斥新解
-鸽子抢巢
--鸽巢原理
--鸽巢原理--练习
--鸽巢原理的应用(1)--练习
-看得见摸得着的鸽巢
--韩信点兵
--中国剩余定理
--容斥原理和鸽巢原理--看得见摸得着的鸽巢
-6人行和Ramsey数
--6人行
--Ramsey数
--小结
-第六周作业
--H
--U
--G
--GT
--作业讨论区说明
-第六周演示程序
--讨论区说明
--程序共享说明
-可以转的世界
--可以转的世界
--可以转的世界--练习
--伽罗华与群
--群的定义
--群的定义--练习
--群的一些概念
-置换群
--置换群
--群--置换群
--共轭类
--对换
--对换--练习
--置换群的应用
-Burnside引理
--着色问题的等价类
--Burnside引理--作业
-闲话群
-第七周作业
--H
--U
--G
--作业讨论区说明
-Burnside引理的困境
-从Burnside到Polya
--Polya定理
-立方体旋转
--立方体旋转(1)
--立方体旋转(2)
--立方体旋转--作业
--立方体旋转(3)
--立方体旋转--作业
--立方体旋转(4)
-母函数型Polya定理
--Polya定理--母函数型Polya定理
-图的计数
--图的计数
-总结
--本章小结
-第八周作业
--H
--U
--G
--GT
--作业讨论区说明
-大家谈组合数学(4)
--采访黄连生老师
-组合之美
--组合之美之计数
-组合之美之线性常系数递推关系
-组合之美之多样的序列
-组合之美之鸽巢原理
-组合之美之转动群与染色
-采访邹欣
--采访邹欣1
--采访邹欣2
-知识点串串烧
--知识点串串烧
-期末测验--期末测验