MD5和RSA是网络传输中最常用的两个算法,了解这两个算法原理后就能dazh...
分类:
移动开发 时间:
2014-05-23 02:09:20
阅读次数:
286
1 创建Ring 代码详细分析
在OpenStack_Swift——Ring组织架构中我们详细分析了Ring的具体工作过程,下面就Ring中增加设备,删除设备,已经重新平衡的实现过程作详细的介绍。
首先看RingBuilder类 def __init__(self, part_power, replicas, min_part_hours):
#why 最大 2**32
...
分类:
其他好文 时间:
2014-05-23 01:50:35
阅读次数:
406
在01背包问题中,在选择是否要把一个物品加到背包中,必须把该物品加进去的子问题的解与不取该物品的子问题的解进行比较,这种方式形成的问题导致了许多重叠子问题,使用动态规划来解决。n=5是物品的数量,c=10是书包能承受的重量,w=[2,2,6,5,4]是每个物品的重量,v=[6,3,5,4,6]是每个物品的价值,先把递归的定义写出来:
然后自底向上实现,代码如下:
def...
分类:
编程语言 时间:
2014-05-23 01:49:06
阅读次数:
461
【题目】
Given a collection of numbers, return all possible permutations.
For example,
[1,2,3] have the following permutations:
[1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], and [3,2,1].
【题意】
给定一个数组,生成所有的全排列
【思路】
递归,类DFS...
分类:
其他好文 时间:
2014-05-23 01:08:26
阅读次数:
194
前面分别通过C和C++实现了迪杰斯特拉算法,本文介绍迪杰斯特拉算法的Java实现。
目录
1. 迪杰斯特拉算法介绍
2. 迪杰斯特拉算法图解
3. 迪杰斯特拉算法的代码说明
4. 迪杰斯特拉算法的源码
作者:skywang12345
迪杰斯特拉算法介绍
迪杰斯特拉(Dijkstra)算法是典型最短路径算法,用于计算一个节点到其他节点的最短路径。
它的...
分类:
编程语言 时间:
2014-05-23 01:01:23
阅读次数:
356
题目:Modified LCS
为过此题去仔细研究了下扩展欧几里德算法,领悟了一些精华。
模板为:
void gcd(ll a, ll b, ll& d, ll& x, ll& y)
{
if(!b) {d = a; x = 1; y = 0;}
else{ gcd(b, a%b, d, y, x); y -= x*(a/b);}
}
这里算出来的x,y是对于方...
分类:
其他好文 时间:
2014-05-23 00:26:20
阅读次数:
377
同样是查找一个图是否有环的算法,但是这个算法很牛逼,构造树的时候可以达到O(lgn)时间效率。n代表顶点数
原因是根据需要缩减了树的高度,也叫压缩路径(Path compression),名字很高深,不过其实不难理解,简单来说就是每次查找一个节点的时候,都把这一路径中的所有节点都赋予根节点作为路径。
原文没指出的地方:
也因为需要压缩,所以初始化的时候注意,不能如前面简单实用Unio...
分类:
其他好文 时间:
2014-05-23 00:21:42
阅读次数:
305
生活中我们经常听到人们说“不要把鸡蛋放到一个篮子里”,这样可以降低风险。深究一下,这是为什么呢?其实,这里边包含了所谓的最大熵原理(The Maximum Entropy Principle)。本文为一则读书笔记,将对最大熵原理以及由此导出的最大熵模型进行介绍,重点给出其中所涉及数学公式的理解和详细推导。...
分类:
其他好文 时间:
2014-05-22 22:45:41
阅读次数:
369
筛选法又称筛法,具体做法是:先把N个自然数按次序排列起来。1不是质数,也不是合数,要划去。第二个数2是质数留下来,而把2后面所有能被2整除的数都划去。2后面第一个没划去的数是3,把3留下,再把3后面所有能被3整除的数都划去。3后面第一个没划去的数是5,把5留下,再把5后面所有能被5整除的数都划去。这样一直做下去,就会把不超过N的全部合数都筛掉,留下的就是不超过N的全部质数。因为希腊人是把数写在涂腊...
分类:
其他好文 时间:
2014-05-22 18:29:55
阅读次数:
392
【题目】
Given a collection of numbers that might contain duplicates, return all possible unique permutations.
For example,
[1,1,2] have the following unique permutations:
[1,1,2], [1,2,1], and [2,1,1].
【题意】
给定一个候选数集合,候选集中可能存在重复数,返回所有的排列
【思路】
...
分类:
其他好文 时间:
2014-05-22 17:32:17
阅读次数:
247