math case
bitcarmanlee
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
科学计算库BLAS LAPACK ATLAS OpenBLAS MKL EIGEN等之间的关系
1.BLAS(Basic Linear Algebra Subprograms)与LAPACK (Linear Algebra PACKage)Blas是Netlib基于Fortran实现的基本向量乘法,矩阵乘法的一种科学计算函数库。Fortran语言是为了满足数值计算的需求而发展出来的。1953年12月,IBM公司工程师约翰·巴科斯(J. Backus)因深深体会编写程序很困难,而写了一份备...原创 2020-04-15 11:38:43 · 3460 阅读 · 1 评论 -
Horner法则,MurMurHash
1.Horner法则假设有一个n次多项式需要计算。f(x)=anxn+an−1xn−1+⋯+a1x+a0f(x) = a_nx^n + a_{n-1}x^{n-1} + \cdots + a_1x + a_0f(x)=anxn+an−1xn−1+⋯+a1x+a0如果直接进行计算,需要n(n+1)2\frac{n(n+1)}{2}2n(n+1)次乘法与nnn次加法。而乘法的代价是比较...原创 2020-03-08 18:55:25 · 526 阅读 · 0 评论 -
调和平均数
调和平均数(Harmonic mean),是求一组数值的平均数的方法中的一种,一般是在计算平均速率时使用。计算方法为:nHn=1a1+1a2+⋯+1an\frac{n}{H_n} = \frac{1}{a_1} + \frac{1}{a_2} + \cdots + \frac{1}{a_n}Hnn=a11+a21+⋯+an1知乎上有个关于调和平均数的回答如下:调和平均的哲学...原创 2020-03-01 23:55:04 · 9978 阅读 · 0 评论 -
埃氏筛法求区间内质数
1.判断整数是否为质数如果要判断某个整数是否为质数,这个相信不是很难。 public static boolean prime(int n) { if (n == 2) { return true; } if (n % 2 == 0) { return false; } ...原创 2019-09-01 12:11:54 · 1027 阅读 · 0 评论 -
硬币找零,最长上升子序列,背包问题等动态规划问题详解
1.硬币找零如果我们有面值为 1 元、3 元和 5 元的硬币若干枚,如何用最少的硬币凑够 11 元?首先我们思考一个问题,如何用最少的硬币凑够 i 元(i<11)?为什么要这么问呢? 两个原因:1.当我们遇到一个大问题时,总是习惯把问题的规模变小,这样便于分析讨论。 2.这个规模变小后的问题和原来的问题是同质的,除了规模变小,其它的都是一样的, 本质上它还是同一个问题(规模变小后的问题其...原创 2018-12-15 22:48:09 · 524 阅读 · 0 评论 -
用递归求字符串的全组合
对于一个给定的序列 a = [a1, a2, a3, … , an],请设计一个算法,用于输出这个序列的全部排列方式。例如:a = [1, 2, 3]则输出为:[1, 2, 3][1, 3, 2][2, 1, 3][2, 3, 1][3, 2, 1][3, 1, 2]如果对于无重复元素的序列,可以用如下方法递归实现:def func(list, start): if ...原创 2018-11-05 23:21:55 · 1109 阅读 · 1 评论 -
博弈论 纳什均衡 囚徒困境 智猪博弈
1.博弈论是什么博弈论(game theory),又译为对策论,或者赛局理论,经济学的一个分支,1944年冯·诺伊曼与奥斯卡·摩根斯特恩合著《博弈论与经济行为》,标志着现代系统博弈理论的的初步形成,因此他被称为“博弈论之父”。博弈论被认为是20世纪经济学最伟大的成果之一。目前在生物学、经济学、国际关系、计算机科学、政治学、军事战略和其他很多学科都有广泛的应用。主要研究公式化了的激励结构(游戏或者...原创 2018-10-07 18:34:13 · 11448 阅读 · 0 评论 -
初学者都能看懂的95%置信区间
1.点估计与区间估计首先我们看看点估计的含义: 是用样本统计量来估计总体参数,因为样本统计量为数轴上某一点值,估计的结果也以一个点的数值表示,所以称为点估计。点估计虽然给出了未知参数的估计值,但是未给出估计值的可靠程度,即估计值偏离未知参数真实值的程度。 接下来看下区间估计: 给定置信水平,根据估计值确定真实值可能出现的区间范围,该区间通常以估计值为中心,该区间则为置信区间。2.中心...原创 2018-09-14 22:56:35 · 396990 阅读 · 11 评论 -
求整数n次方以及矩阵n次方快速解法
1.求整数的n次方现在想求mnmnm^n的值,如何用比较快速的方法求得上述值? 例如我们想求1275127512^{75}的值,快速解法如下: 1.75的二进制数形式为1001011 2.1275=1264∗128∗122∗121275=1264∗128∗122∗1212^{75} = 12^{64} * 12^8 * 12 ^ 2 * 12 具体求解的时候,我们先计算1211211...原创 2018-09-10 22:38:58 · 10271 阅读 · 0 评论 -
排列组合计算公式简易版
记录一下排列组合中一些重要又常用的公式。1.0!=10!=10! = 1 2.Pmn=n(n−1)(n−2)⋯(n−m+1)=n!(n−m)!Pnm=n(n−1)(n−2)⋯(n−m+1)=n!(n−m)!P_n ^ m = n(n-1)(n-2)\cdots (n-m+1) = \frac{n!}{(n-m)!} 3.pnn=n!=n(n−1)(n−2)⋯3⋅2⋅1pnn=n!=n(n−...原创 2018-08-30 21:15:25 · 49220 阅读 · 0 评论 -
三次数学危机
最近在看某些文献的时候,有好几次都提到了数学危机,于是根据自己的理解,特意整理了一下关于三次数学危机的资料。1.第一次数学危机如果用一句简单的话概括第一次数学危机,可以描述为2‾√2\sqrt 2危机。 古希腊毕达哥拉斯学派是一个唯心主义学派。毕达哥拉斯学派认为,“万物皆数”(指整数),数学的知识是可靠的、准确的,而且可以应用于现实的世界,数学的知识由于纯粹的思维而获得,不需要观察、直觉...原创 2018-05-01 22:48:44 · 3636 阅读 · 0 评论 -
在python中画正态分布图像
1.正态分布简介正态分布(normal distribtution)又叫做高斯分布(Gaussian distribution),是一个非常重要也非常常见的连续概率分布。正态分布大家也都非常熟悉,下面做一些简单的介绍。 假设随机变量X服从一个位置参数为\mu、尺度参数为\sigma的正态分布,则可以记为: {\displaystyle X\sim N(\mu ,\sigma ^{2})}原创 2018-01-24 18:06:08 · 91842 阅读 · 7 评论 -
单个id聚合
1.问题描述最近项目中经常需要处理这样的case:{"a", "b", "c", "d", "e", "f", "g"}{"a,b,c","d,e","f,h", "k"}上面两个集合,其中第一个集合全是单个id,第二个集合是多个id。现在需要将第一个集合中的id,按照第二个集合聚在一起。例如按上面两个集合,最终的输出为:deabcf2.解决方案这还算是一个比较复杂的问题。经过思考,给出了如下原创 2017-12-18 10:01:07 · 737 阅读 · 0 评论 -
判断一个数是否为质数
1.质数的定义只要有小学毕业证的同学都知道质数是什么鬼。因为本人没有小学毕业证,特意记录一下质数的定义: 对于大于1的数,如果除了1和它本身,它不能再被其它正整数整除,那么我们说它是一个质数。2.判断是否为质数import mathdef isPrime(n): if n == 1: return False elif n < 4: return T原创 2017-03-06 22:04:59 · 5648 阅读 · 1 评论 -
用概率的方法计算Pi值
精确计算Pi的值,从古至今都吸引了无数的数学家。迄今为止,科学家还没有计算得出精确的Pi值,也没有发现小数点后面的值有什么规律。 现在,我们用一种比较简单的概率的方式来近似计算Pi的值。 二话不说,直接上代码。public class PiCaculate { public static double caculate() { Random r = new Random()原创 2016-10-05 22:48:28 · 5478 阅读 · 0 评论 -
大数据工程师必备之蓄水池抽样算法
做大数据的同学经常会有这样的需求: 给出一个数据流,这个数据流的长度很大或者未知。并且对该数据流中数据只能访问一次。请写出一个随机选择算法,使得数据流中所有数据被选中的概率相等。 或者也可以这么说: 要求从N个元素中随机的抽取k个元素,其中N的大小未知。很多同学说,擦,这还不简单么,将所有元素保存在一个列表中,然后再随机取k个不就完了么。 好吧,如果你不是专门搞大大大数据的同学,这么说我觉得原创 2016-10-01 22:47:05 · 15102 阅读 · 5 评论 -
从文本中随机选择百万行
现在有一个260万行的文本,希望从中随机选择100万行。以下这些方法,经过博主的验证,都是实际可行的。原创 2016-10-01 18:00:00 · 3349 阅读 · 0 评论 -
用牛顿迭代求方根
1.前言各种编程语言中都有实现求一个数方根的函数,即sqrt函数。但是,如果不用sqrt函数,只用四则运算让求一个数的方根,该怎么办勒?换句话说,让你自己实现sqrt函数,你能实现么?OK,各位最好先自己想想然后动手实现以下。如果遇到了困难,欢迎接着往下阅读本文。2.用二分的思想二分法是非常好用的套路。对于各种快速查找还有迭代类的运算都是一把好手。而且复杂度只有logn\log n。这里我们也可以采原创 2016-08-12 18:15:51 · 2067 阅读 · 0 评论
分享