摘要: http://blog.csdn.net/hfahe/archive/2010/05/07/5567259.aspx   常见面试题之一:50亿个整数,内存限制为1G,找出中位数。 50亿个整数用bitmap来存储的话,大约150M的空间就足够了。 下面是具体的算法,用PHP实现。 view plaincopy to clipboardprint? define("M... 阅读全文
posted @ 2010-08-29 16:38 donj 阅读(727) 评论(0) 推荐(0) 编辑
摘要: 转自: http://hi.baidu.com/bellgrade/blog/item/935a432393b949ae4723e828.html (1).窗口机制 滑动窗口协议的基本原理就是在任意时刻,发送方都维持了一个连续的允许发送的帧的序号,称为发送窗口;同时,接收方也维持了一个连续的允许接收的帧的序 号,称为接收窗口。发送窗口和接收窗口的序号的上下界不一定要一样,甚至大小也可以不同。不同... 阅读全文
posted @ 2010-07-28 21:14 donj 阅读(1734) 评论(0) 推荐(0) 编辑
摘要: 作者: 小橋流水 发表于 2010-07-20 15:15 原文链接 阅读: 415 评论: 3 1. 给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url? 方案1:可以估计每个文件安的大小为50G×64=320G,远远大于内存限制的4G。所以不可能将其完全加载到内存中处理。考虑采取分而治之的方法。 s 遍历文件a,对每个url求... 阅读全文
posted @ 2010-07-21 19:19 donj 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 常用的字符串Hash函数还有ELFHash,APHash等等,都是十分简单有效的方法。这些函数使用位运算使得每一个字符都对最后的函数值产生影响。另外还有以MD5和SHA1为代表的杂凑函数,这些函数几乎不可能找到碰撞。常用字符串哈希函数有BKDRHash,APHash,DJBHash,JSHash,RSHash,SDBMHash,PJWHash,ELFHash等等。对于以上几种哈希函数,我对其进行了... 阅读全文
posted @ 2010-07-12 16:00 donj 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 恩,对于n个数,从小到大的生成全排列 首先,对于一个数字,如何仅通过排列的手段获得更大的数呢,找到逆序,交换即可, 那如何在比其大的数中生成最小的那个呢, 交换的位数要尽可能的低,被换的大数要尽可能的小。 阅读全文
posted @ 2010-06-29 15:39 donj 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 注意要使用宏包\usepackage{graphicx} 和\usepackage{subfigure} \begin{figure} \centering \subfigure[figure 1 title.] { \label{fig:a} \includegraphics[width=0.8\columnwidth]{fig1.eps} } \subfigure[figure 2 titl... 阅读全文
posted @ 2010-06-17 11:16 donj 阅读(21062) 评论(0) 推荐(0) 编辑
摘要: 模拟退火算法 用于求解最优化问题的算法,从一个初始值开始,搜索当前值周围的可选值,如果比当前值最优,则从此值开始继续搜索,否则以一个概率接受它(即不是遇到次优解就拒绝,而是以一个概率接受),此接受概率随着时间(或某指标)而降低。 hill-climbing 和贪心算法都是只取最优的,对于次优的直接抛弃,hill-climbing不仅要优于当前解,还要是所选的所有候选解中最优的。 阅读全文
posted @ 2010-06-10 15:46 donj 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 对于任意正整数n 所有小于n的正整数排成序列 123456……n 由于多位数的存在,上面这个序列的位数并不等于n,有个递推公式 阅读全文
posted @ 2010-06-09 17:10 donj 阅读(259) 评论(0) 推荐(0) 编辑
摘要: int i=5; 1  2  3  4  5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 int i=6 1  2  3  4  5   6 20 21 22 23 24  7 19 32 33 34 25  8... 阅读全文
posted @ 2010-05-30 13:26 donj 阅读(1531) 评论(0) 推荐(0) 编辑
摘要: clrs problem 7-6  问题如下 考虑这样的一种排序问题,即无法准确地知道待排序的各个数字到底是多少。对于其中的每个数字,我们只知道它落在实轴上的某个区间内。亦即,给定的是 n个形如[ai, bi]的闭区间,其中ai<= bi。算法的目标是对这些区间进行模糊排序(fuzzy-sort),亦即,产生各区间的一个排列<i1, i2, ..., in>,使得存在... 阅读全文
posted @ 2010-04-04 22:03 donj 阅读(1409) 评论(0) 推荐(0) 编辑