
Algorithms
denlee
这个作者很懒,什么都没留下…
展开
-
Longest Increasing Subsequence(LIS)
已知集合A[1...n],求最长上升(递增、单调增)子序列。较为常见的DP问题,实际上就是求以求Ai开始的最长子序列(1 关于LIS问题,一般化的子问题可以描述为:集合Aij(iAi,只要满足此条件,则LIS(k,j)也是最优解,可以采用cut-and-paste以及反证法证明(设LIS(i,j)=l,则满足条件存在k(iAi的LIS(k,j)=l-1,如果LIS(k,j)不是最原创 2010-01-24 16:27:00 · 823 阅读 · 0 评论 -
2-3树
前言:2-3树的资料比较少,国内的某本参考书关于2-3树的介绍和国外的还不一样,网上搜了一下,发现这一篇翻译的介绍比较详细,不错,于是转贴一下。 资料来源于:http://blog.donews.com/sowen/ 前言 备注:文中可能偶尔多用了英文,倒不是卖弄,很多时候只是习惯性的,因为如果你平时接触的东西都是英文的,你写下来的时候自然想到的是英文字眼,而不是多一层先翻转载 2010-02-02 22:33:00 · 3866 阅读 · 3 评论 -
关于VC产生伪随机数
VC2010的rand产生的随机数范围是0~0x7fff,也就是16位的伪随机数,有时可能不够用。产生32位伪随机数的比较好的算法是由Takuji Nishimura 和 Makoto Matsumoto于1997年开发的一种随机数生成方法,它基于有限二进制字段上的矩阵线性再生,可以快速产生高质量的伪随机数,该算法的循环周期为219937-1,俗称MT19937算法。现在又有了这种算法的改进,并且原创 2012-01-12 16:23:23 · 1144 阅读 · 0 评论 -
Python模拟二项分布
Python的numpy库中有二项分布采样的函数:numpy.random.binomial(n,p,size=None)3个参数:n表示伯努利试验次数,p表示伯努利试验得到正例的概率,size表示采样次数;返回结果为出现正例的次数k。可以使用该函数来模拟二项分布,借用Inside_Zhang[1]的例子:野外正在进行9(n=9)口石油勘探井的发掘工作,每一口井能够开发出油的概率是...原创 2019-08-05 17:17:04 · 6639 阅读 · 0 评论 -
Python实现蒙特卡洛模拟
蒙特卡洛模拟是一种统计学方法,基本原理是通过大量的随机样本对系统进行模拟,从而求得所需计算的参量。使用蒙特卡洛模拟方法的基本要素包括:构建或描述概率模型、从已知概率分布采样、建立各种估计量。使用“简书-朱焕”的"定量分析项目总持续时间"例子:比如说我们现在有个项目,该项目共有三个WBS要素分别是设计、建造和测试,为了简单起见我们假设这三个WBS要素的预估的工期概率分布都呈标准正态分布,而且三者...原创 2019-08-08 16:46:46 · 28252 阅读 · 0 评论