
数学
文章平均质量分 53
方林博士
计算机软件博士,致力于计算机教育、科研和软件项目开发
展开
-
从傅立叶变换到奥运五环
从极坐标变换的角度给出了傅立叶变换的本质,然后加以利用,从而绘画出了许多不可思议的图形。原创 2024-02-15 02:17:46 · 547 阅读 · 0 评论 -
用遗传算法解决中国邮递员问题
所谓中国邮递员问题,见下面无向图 ,假设邮递员初始位置在A点,现在他要访问所有其他4个结点以便投递邮件,结点与结点之间的距离已经标注在边上。问:邮递员应该依次访问哪些结点才能以最短路径遍历所有结点,并且最后还能回到原点。比如,假设邮递员依次访问ACDEBA,则总路径长度是8+7+7+12+10=44。这里要求路径中每相邻的两个结点之间存在一条边,且起点和终点都是邮递员的起始结点,路径覆盖了邮递员所有能到达的结点。ACEDBA就不是一条合法的路径,因为C和E之间没有边。ACDEBA是一条合法的路.原创 2021-11-08 12:20:13 · 4383 阅读 · 1 评论 -
抛物线和汽车大灯
现在汽车已经进入千家万户了。大家注意到车灯了吗?今天的问题跟光的反射以及抛物面有关。下图显示了车灯的切面:其中O点是灯芯所在位置,它发出的光线经过灯壁反射后射出。射出的光线与地面平行。我们的问题是:灯壁所形成的曲线是什么曲线,为什么?答案抛物线。说明以O为原点建立如下图所示的直角坐标系,光线与灯壁的交点A的坐标是(x, y),见下图:过A做切线BD,D是切线与y轴的交点。因为光线的入射角和出射角相等,所以:由于CA是一条与y轴平行的直线,所以,,代入上式有:.原创 2021-08-23 12:49:19 · 895 阅读 · 0 评论 -
如何证明弹簧振子的震动周期与初始位置无关
如下图所示的一个与弹簧相连的小球,小球称为振子,弹簧的质量被忽略。弹簧的另一端与墙体相连。弹簧和振子都放在光滑(即摩擦力忽略不计)的水平平面上,弹簧处于松弛状态(既不拉伸也不压缩)。现在把振子拉倒B点,然后松手,振子被弹簧拉扯,速度逐渐加快,直到经过O点。之后振子依靠惯性挤压弹簧,速度逐渐变慢到达C点后为零。之后振子就会在B、C之间来回振动。|BO| = |CO|成立。假设振子的质量是m(千克),弹簧的弹性系数是k(牛顿/米),|BO|的长度等于c,我们的问题是:请用微积分的办法给出振子速.原创 2021-08-23 09:59:07 · 1544 阅读 · 0 评论 -
韩信点兵问题,即使没有学过数论也能看得懂
这个问题又叫中国剩余问题。传说韩信有一次想知道自己有多少士兵,由于士兵太多了,直接数数太慢太麻烦了。他让所有士兵每5个人排成一排,结果剩余3个人;每7个人排成一排,结果剩余5个人;每11个人排成一排,结果剩余5个人;每13个人排成一排,结果剩余9个人。问韩信一共有多少兵。有趣的是,类似的问题在《射雕英雄传》里也提到过:瑛姑因为思考这样的问题白了头发,结果还是黄蓉解开了这个问题,并因此顺利地探知了一灯大师的下落。现在考验你是否像黄蓉一样聪明的时刻到了。答案698人说明5个人一排剩余3个人,原创 2021-08-09 17:26:00 · 644 阅读 · 0 评论 -
二分法和黄金分割法的区别和联系,附Python代码
二分法二分法的本质是求函数y=f(x)在y*处的解x*,使得f(x*)=y*。也就是说二分法的目的是求函数在确定值y*处的解。假设g(x) = f(x) - y*,则有g(x*) = f(x*)-y* = 0,所以求函数在确定值y*处的解等价于求函数在0处的解。设有函数f(x),且有f(a) < 0 和f(b) > 0,则求x*使得f(x*)=0的Python代码如下:def solve_with_binary(func, a, b, epslon=0.0001): """原创 2021-08-03 14:03:00 · 3218 阅读 · 1 评论 -
买100送50相当于打了几折?
买100送50是不是相当于打五折?不,错了,仅相当于打了6.7折。为什么?因为买100送50一般送的是相当于50元的消费券,而不是50块钱。你还必须把这50元券花出去,再买回来价值50元的商品才行。所以,相当于你花了100元钱,买回来150元的商品,所以打折数是6.7折,也就是所有的商品以2/3的价格卖给你。不是你心目中的打5折,所有商品半价卖给你。很多商家利用顾客不懂数学就玩这个把戏,常常让你多花了钱还以为自己占了便宜。如果送你的不是50元券,而是货真价实的50块钱,相当于你用50元钱购买了100原创 2021-07-30 17:36:53 · 25446 阅读 · 0 评论 -
五猴分桃问题的数学解
上篇博客(https://fanglin.blog.youkuaiyun.com/article/details/119173258)中谈到了五猴分桃问题:有5只猴子上山去摘桃,一直摘到天黑。5只猴子把所有的桃子放在一起,然后约定第二天一早来分桃。第二天早晨,来了一只猴子。他等了一会后心想:不如干脆我把桃子分了吧。于是他把桃子分成了五等份,分完后发现多了一只桃子。他想:我这么辛苦把桃子分了,这多出的一只桃子理应归我!于是他吃了这只桃子,然后带上一等份桃子,走了!过了一会,第二只猴子来了。他也等了一会。不耐烦之后也把原创 2021-07-30 09:12:46 · 2092 阅读 · 0 评论 -
Python和贝叶斯网络:贝叶斯理论(6)
在前面的章节中我们学习了贝叶斯网络的基本知识。本章将利用Python建立如下图所示的贝叶斯网络:在Python中建立贝叶斯网络要引入pgmpy包和pandas包,然后编写如下代码:from pgmpy.models import BayesianModelfrom pgmpy.factors.discrete.CPD import TabularCPDimport pandas as pdm = BayesianModel() # 创建一个贝叶斯网络m.add_edge('爱情'.原创 2021-07-24 16:47:48 · 1272 阅读 · 2 评论 -
贝叶斯网络的独立性:贝叶斯理论(5)
有些贝叶斯网络联合概率的计算是可以化简的。比如:a、b、c的取值范围分别是、和,i、j、k=1, 2, 3, ...... 。求已知情况下的概率。解:上图的联合概率计算公式是:,代入(1)式得: 其中代入上式得:也就是说,在已知b的情况下a的概率的计算与c无关,简称为a与c独立。这样就大大简化了计算。总结起来说,在已知b=B的情况下,下面每个图中的a与c独立:这意味着,此时求a的每个状态的概率完全可以...原创 2021-07-23 11:00:56 · 1392 阅读 · 0 评论 -
贝叶斯网络的联合概率到底有什么用:贝叶斯理论(4)
上篇博客我们描述了如何计算贝叶斯网络联合概率的方法。这里再举一个例子:上图这个例子中,事件a导致了b和c的发生。假设a有、、三种状态,b有、两种状态,c有、,a的每个状态的先验概率是: 0.3 0.5 0.2 b对a的条件概率是: 0.4 0.6 0.1 0.9 0.8 0.2 c对a的条件概率是: 0.5 0.5 0 1.0原创 2021-07-22 10:19:12 · 3362 阅读 · 7 评论 -
面试精选:很简单的请人帮忙问题,答案却让你大吃一惊
A、B、C三个人一起完成一个工作。每个人的工作技能和效率都是一样的。但是A由于临时有事不能参加了,于是他出900块钱请B、C两人代替他干完。于是B、C两人开始这项工作。首先B干了4小时,然后C接着干了5小时。请问两人应该怎样分配这900块钱?答案B应该拿300块钱,C应该拿600块钱说明第一眼看这道题,很容易凭直觉给出答案,B得400块,C得500块,但实际上应该这样思考:B干了4小时,然后C接着干了5小时,这说明这个工作一个人需要9小时才能干完。平均每人需要干3小时。B干了4小时,多干了1原创 2021-07-21 10:37:26 · 887 阅读 · 0 评论 -
贝叶斯网络——贝叶斯理论(3)
对贝叶斯公式大家可能已经比较熟悉了,贝叶斯网络又是什么东东?贝叶斯网络又叫概率图模型,是图灵奖得主Judea Pearl于1985年首先提出的。现在大火的深度学习神经网络,以及机器学习中的马尔可夫链、隐马尔可夫链,甚至决策树、支持向量机SVM、AdaBoost、XGBoost、GBDT等等不过是贝叶斯网络的特殊情形。所以深入研究贝叶斯网络相当重要。贝叶斯网络的目的贝叶斯网络是一个有向无环图,其中的结点表示事物的状态,而结点a指向结点b的有向弧表示a对b的发生有影响。举个栗子,假设a表示抽烟与否(表示原创 2021-07-21 10:22:04 · 2875 阅读 · 0 评论 -
女神和吊丝系列:朴素贝叶斯方法朴素在哪?——贝叶斯理论(2)
在上篇博客《贝叶斯理论(1)》(https://fanglin.blog.youkuaiyun.com/article/details/118889244)中我们讲解了贝叶斯公式的本质就是经验学习,也就是说,通过新发现的证据、现象、表现调整我们对事物的认识。这篇博客讲朴素贝叶斯方法。贝叶斯公式是讲如果有新证据新现象发生,我们该怎么把事物的先验概率调整为后验概率,如果有两个新证据发生我们又该怎么办呢?朴素贝叶斯方法讲的就是如何处理这种情况。假设表示女神喜欢吊丝的先验概率,女神不喜欢吊丝的先验概率,表示女神对你笑.原创 2021-07-20 10:38:17 · 444 阅读 · 0 评论 -
女神和吊丝:从贝叶斯公式看经验学习——贝叶斯理论(1)
贝叶斯公式是:怎样深刻理解这个公式而不是死记硬背呢?回答这个问题首先要弄明白贝叶斯公式到底要达到什么目的。贝叶斯公式要达到的目的是实现经验学习,也就是说,根据现有的经验调整人们对不同事物发生概率的预期。举个栗子:女神到底喜不喜欢你呢?根据贝叶斯理论,先要搞清楚女神喜欢一个吊丝的先验概率,即上面公式中的,这里假设是女神喜欢屌丝的概率,是她不喜欢吊丝的概率。什么是先验概率,就是在没有任何表现或者证据情况下的事物的概率。拿上面的例子来说就是统计全社会所有女神,看看她们中间喜欢吊丝的有多少从而计原创 2021-07-19 11:08:51 · 456 阅读 · 0 评论 -
补码是什么东东:计算机组成基本知识之一
计算机的核心部件是CPU,CPU的核心是什么?是一个加法器。这个加法器只能执行一种操作,即二进制加法。其他运算都是通过加法实现的。比如说乘法、除法和减法。乘法好理解,可以认为是多个加法和多个移位运算组成的,比如:所以二进制1001与101相乘的结果就是101101。同样地,除法可以用减法表示。那减法呢?减法该怎么计算呢?要想计算减法,首先要明确的一点是:计算机内部一个整数是由有限个bit组成的。这里我们假设一个整数由8个bit组成。这意味着任何超过8位的整数都会被自动截断。也就是说所以.原创 2021-07-14 22:10:25 · 414 阅读 · 0 评论 -
爱因斯坦E=mc^2公式的推导
推导的起点是动量公式和质量转换公式:1)动量公式,设p表示动量,m、v、f、t、分别表示质量、速度、力和时间,则有:2)质量的转换公式,设m0表示物质的初始质量,c是光速,m是物质在速度v下的质量,则有:假设:代入(2)得所以有:假设m、v、f都是t的函数,根据(1)有:把(3)、(5)代入(6),得:把(4)代入,得:假设E和s分别是物质的动能和位移,则有:速度v是位移s对时间t的导数:.原创 2021-07-14 14:05:51 · 5564 阅读 · 1 评论 -
生活中的数学:光线的最短路径是直线吗?
微积分又要来帮助我们理解物理现象了。这次的物理现象就是大家很熟悉的光的折射。我在中学时代学习光的折射时就很疑惑入射角和出射角(见下图)到底是什么关系。直到有一天我看到这样一段文字:海滩或者游泳池边有救生员,当发现水里有人遇到危险需要施以援手时,他该以什么方向冲向遇险者呢?一般地,我们可能以为救生员应该沿着直线冲向遇险者(见上图虚线)。可是实际上救生员几乎从来不这样做。这是因为他在陆上奔跑的速度和在水里游泳的速度差别很大,他应该争取在陆上多跑点路,在水里少游点距离。所以他实际奔跑和游泳的路线如原创 2021-07-13 08:33:10 · 929 阅读 · 0 评论 -
面试精选题:让我们像牛顿一样思考苹果
有十筐苹果,每筐里有十个,共100个,每筐里苹果的重量都是一样,其中有九筐每个苹果的重量都是1斤,另一筐中每个苹果的重量都是0.9斤,但是外表完全一样,用眼看或用手摸无法分辨。现在要你用一台普通的大秤一次把这筐重量轻的找出来。答案从第一个筐里拿一个苹果,从第二个筐里拿两个苹果,以此类推,从第i个筐里拿i个苹果。总共拿了1+2+...+10 = 55个苹果。如果这55个苹果都是好苹果的话,总重量应该是55斤。但由于其中有一筐苹果都是坏的,所以这筐苹果每个要比好苹果轻0.1斤。所以,假设..原创 2021-07-13 07:27:43 · 271 阅读 · 0 评论 -
三路开关问题
最近,我的一个朋友买了别墅后正在装修。在1楼和2楼之间的墙壁上有一个壁灯,用来对楼梯进行照明。他希望能够在1楼和2楼各安装一个开关控制这个壁灯。要求两个开关都能控制这个壁灯。这样的二路开关比较简单,我们在中学物理中都学过,示意图如下:装修一段时间后,朋友遇到一个新问题:有一个大吊灯从3楼垂到1楼,他需要三个开关能随意控制这个吊灯。装修师傅不会装这样的三路开关,事情拖了很久。现在你能不能想到一个简单的法子解决这个问题呢?更进一步,四路开关、五路开关、……能不能做出来呢?答案在二路开关之间布置一原创 2021-07-12 21:38:09 · 264 阅读 · 0 评论 -
面试智力题精选:扑克牌问题
袁方同学在玩扑克牌。这幅扑克牌比较特别,没有花色,只有点数。每张牌的点数是1,2,3,...,20。一共20张牌。袁方把牌洗了很多遍以后,把所有牌正面朝下垒成一堆放在自己手上。他翻第一张牌,发现是1。他把这张1放在桌面上,然后把第二张牌放在所有牌的末尾,再翻第三张牌,结果是2。他把这张2也放在桌面上,再把第四张和第五张牌放在所有牌的末尾,...。每一次,袁方同学都翻一张牌,如果这张牌的点数是N,他就接着取N张牌放在所有牌的末尾,不断循环直到所有牌取完。结果发现他翻牌得到的点数按顺序分别是1、2、3、...、原创 2021-07-10 08:28:03 · 1859 阅读 · 0 评论 -
面试题-概率论:酒鬼问题
有一个镇子上有一个酒鬼,他每天有90%的概率出门喝酒。他喝酒时总是随机地在三个酒馆中喝酒。有一天,有一个朋友要找酒鬼,他在第一个酒馆中没有发现酒鬼。请问他在其他两个酒馆发现酒鬼的概率是多少?这一题考查的是你对联合概率、条件概率、先验概率、后验概率以及贝叶斯公式的理解和应用。答案6/7说明酒鬼不出门的概率是10%,出门后在三个酒馆出现的联合概率都是90% * 1/3 = 30%。所以,他朋友在另外两个酒馆发现酒鬼的概率是:2*30% / (2*30% + 10%) = 6/7...原创 2021-07-09 13:37:07 · 1106 阅读 · 0 评论 -
面试智力题:网格爬虫问题
有一个m行n列的网格,如下图(m=3,n=4),网格的左上角有一只小虫子。它沿着网格线爬行,目标是右下角。这只虫子在爬行时,只能向右走,或者向下走,不能往上走或者往左走。这样,虫子就会有很多条路径。比如:往右走4格再往下走3格。另一条可能的路径是:先往右两格,再往下两格,再往右两格,最后往下1格。我们的问题是:一共有多少条不同的路径?比如当m=3,n=2时,共有10条路径;当m=3,n=4时,共有35条路径。答案:C(m+n, m),表示从m+n个元素中取m个的组合数。解释:..原创 2021-07-09 09:27:48 · 880 阅读 · 0 评论 -
车停不下来了,怎么办?
很久以前我上中学的时候曾经至少有两个物理老师跟我说过,行驶中的汽车所受到的阻力与汽车的速度的平方成正比。相信可能你也听说过这样的说法,今天,我们来验证一下这个说法对不对。为了简化我们的思考,我们学习伽利略,只考虑在光滑平面上行驶的汽车在失去动力的情况下受到的空气阻力。这样可以忽略摩擦阻力和发动机动力的影响。看看在这种情况下空气阻力是否与速度的平方成正比。今天的问题是:行驶的汽车失去动力后所受到的空气阻力与速度的平方成正比,这句话对吗?答案这句话是错误的。说明假设空气阻力f与速度v的平原创 2021-07-08 10:33:56 · 308 阅读 · 0 评论 -
用Tensorflow算算你的股票由负转正的复合增长率等于多少
日前一位老朋友跟我讲到了他想了很久的一个问题:负数的复合增长率如何计算?先说什么是复合增长率。假设一个数在n个单位时间内从a变成b,增长率就是:假设复合增长率是r,则有:所以:这个公式不难理解。问题是,当a和b的符号不同时,b/a的结果是负的,这个公式显然不适用了。这个问题就是负数增长率如何计算问题。解决这个问题的办法是首先把增长率按照正负两种情况加以考虑,然后再把人工智能深度学习的思想引入进来,利用Tensorflow自动求偏导的功能解决问题。正数的增长公式原创 2021-07-05 10:18:11 · 2846 阅读 · 3 评论 -
学好概率论就不怕女生说你直男了
假设世界上所有的男女都分为两类人:物质的和感情的。前者表示比较注重物质(比如说房子和车),后者表示比较注重感情。一个物质的人和一个物质的异性在一起一般来说能够处得来,假设他们每个人获得的幸福度都是1。一个物质的人和一个感情的异性在一起就比较糟糕,每个人能获得的幸福度都是0。一个感情的人和一个感情的异性在一起就很棒,每个人能获得的幸福度都是2。假设你能遇到什么人都是随机的,你也不可能事先知道对方是哪一种人。那么在什么情况下你应该做一个物质的人,在什么情况下你应该做一个感情的人,从而能够获得最大的幸福呢?你的答原创 2021-07-05 06:29:46 · 236 阅读 · 0 评论 -
如果他嫉妒你你就用数学干掉他
前面我们在解决公平分蛋糕问题时,提出公平的含义就是“每个人都认为自己得到的蛋糕不少于1/n”。其中n是参与分蛋糕的人数。并给出了一个“公平”的分蛋糕方法:第一个人把蛋糕分成n份,其他n-1个人每人挑一份。剩下没人选的那一份就给第一个人。然后剩下n-1个人把剩下的蛋糕合在一起,再进行一次类似的分配。每重复一次排除一个人,直到所有人都分到蛋糕为止。特别地,当n=2时,一个人负责切蛋糕,另一个人负责挑选蛋糕,剩下的蛋糕给第一个人,这种方式简称为“你分我选”方式。其实公平分配蛋糕的方法不止这一种。一个等价的,但原创 2021-07-04 06:48:23 · 282 阅读 · 0 评论 -
公平就是你切蛋糕我来选
公平是什么?这也许是至今也没有得到彻底解决的一个问题。要不然世界上也不会有那么多纷争。但是今天,我们要从数学的角度,在一个较理想化的环境中试图理解什么是公平。比如两个人分一块蛋糕。怎么分才是最公平的呢?一个办法是让两个人中人品比较好的那个人把蛋糕分成两份,并决定谁拿哪份。这个方法看上去有道理,其实并不能保证公平。因为人性摆在那,人品好的人不代表他在分蛋糕的时候没有一点私心。而且,如何判断一个人的人品呢?更重要的是,就算这个人能够百分之百地把蛋糕分成了相等的两份,谁能保证另一个人觉得这两份是“相等”的呢?原创 2021-07-04 06:37:46 · 557 阅读 · 0 评论 -
Python解决12小球问题
三进制12小球问题就是说有12个一模一样的小球,外表看不出区别,但是其中有且仅有一个小球是坏球,它比其他球可能重一点,也可能轻一点。给你一架天平,请只称三次就找到这个小球。上一篇博客已经说明了解这个问题的手工解,这次我们试图编写一个计算机算法来解决这个问题,难度显然要大多了。解决这个问题之前,我们先来谈谈数的进制。为什么人类习惯使用十进制呢?因为人的两只手恰好有十根手指头,十进制计数方便。如果外星人有八个手指头,那他们极有可能常用的是八进制而不是我们认为理所当然的十进制。计算机中主要使用的是二进制,原创 2021-07-01 15:08:15 · 1544 阅读 · 0 评论