具体数学-第1课(递归求解实际问题)

简介: 这学期提前选修了研究生的课程:具体数学、人工智能前沿、NLP讨论班,就随便记记具体数学每一节课所学的东西吧。第一节课讲的都是一些很简单的东西,这里就一带而过了。

汉诺塔问题


这是个老生常谈的问题了,n个盘子,3个柱子的汉诺塔问题,最少移动次数记为 image.png

那么 image.png

边界条件为 image.png

解出 image.png

验证可以采用数学归纳法,这里就不多说了。

直线分割平面问题


这也是个高中问题了,n条直线最多分割平面为几部分,记为 image.png

那么 image.png

边界条件为 image.png

解出 image.png

这题有个扩展,n个V型最多分割平面为几部分?

解决思路如下:

c164d797cdcad6098f2ca092fe01df7c.jpg

如上图所示,将V型补全(红色虚线部分),那么就转化为了 2n 条直线划分平面数,那么n个V型划分数只要减去 2n 就行了,所以答案为:

image.png

约瑟夫环问题


这个问题暴力求解的话模拟就行了,复杂度是 image.png 的,这里探索一种直接求解的方法。

分两种情况讨论:

当有 2n 个人时,踢掉 n 个人之后,情况如下图所示

0bf9031ece39dbd68500fbb5851e7367.jpg

观察对应关系可以得出

image.png

同理,当有 2n+1 个人时,踢掉 n+1 个人之后,情况如下图所示

66dcb3964a28fd1474cd838c53265c22.jpg

观察对应关系可以得出

image.png

边界条件为

image.png

这个递推式很难求解,但是枚举出前面几项可以发现,如果令 image.png ,其中 image.png 是小于等于 n 的最大2的幂,那么

image.png

正确性可以通过数学归纳法求证。

第一节课就讲了这么多,约瑟夫环还有很多问题值得探讨,下节课继续。。。


相关文章
|
6月前
|
算法 测试技术 索引
动态规划算法练习题
动态规划算法练习题
42 0
|
算法
[蓝桥杯] 递归与递推习题训练
蓝桥杯比赛只有四十天左右啦,最近会按照模块更新一些有关蓝桥杯算法题。学习算法不仅仅是为了参见比赛,更是以后找工作的一个敲门砖。废话不多说,我们直接看题。
80 0
|
算法
梯度下降算法详解(从下山比喻、数学推导到代码实现)
梯度下降算法详解(从下山比喻、数学推导到代码实现)
1112 0
|
算法 Java Python
【算法题解】 Day11 数学
今天的算法是 「数学」 相关,“算法题解系列文章旨在精选重点与易错的算法题,总结常见的算法思路与可能出现的错误,以实战习题的形式理解算法,使用算法。”
52 0
具体数学-第13课(组合数各种性质一)
首先这节课讲的基本都是组合数的相关性质,而且特别多,所以我就不在这里详细证明了,如果你们对某一个性质感兴趣,可以自己证明去。
228 0
具体数学-第13课(组合数各种性质一)
具体数学-第3课(递归式转化为求和求解二)
今天讲了一种将递归式转化为求和的方法。
116 0
具体数学-第3课(递归式转化为求和求解二)
具体数学-第3课(递归式转化为求和求解一)
今天讲了一种将递归式转化为求和的方法。
具体数学-第3课(递归式转化为求和求解一)