- 博客(5)
- 资源 (6)
- 收藏
- 关注
原创 随机采样问题
请区别采样和抽取 采样:如以1/8概率采样,则采8次可能采到0个数据,也可能采到8个数据,期望采到8/8=1个数据抽取:从8个中抽取一个,则一定采且只采一个,并且是以等概率采之 数据流长度已知,假设为n 随机抽取一个数据 结果:抽且只抽了一个选取一个1~n的随机数k,读到第k个数据,选取之,完成对于每次读入的新数据,以1/n的概率判断是否选取它,n根据以下规则变化 若选取
2012-09-28 21:11:42
649
原创 全排列的生成
使用递归的策略生成所有的全排列 1. 生成所有的全排列_1 (数组元素初始化为0, 1, 2 ... n) void perm_1(int *arr, int NLEN, int cur) { if (cur == NLEN){ for (int i = 0; i < NLEN; i++) cout << arr[i] << '\t';
2012-09-28 20:54:34
557
原创 summary of dynamic set
dynamic set是我们在内存中维护的一个感兴趣对象的集合,集合可以增大 缩小 或者元素被改变。 详细考察动态表的基本操作: Search(S, k)Insert(S, x)Delete(S, x)Minimum(S)Maximum(S)Successor(S, x)Predecessor(S, x) k为对象的key,x为包含(key, value)的对象指针或者引用。注意只有
2012-09-28 19:00:50
273
原创 variants of median
1. 一维无序数组(基本情形):用quick sort的partition容易实现,效率为O(n) 。 2.两个等长的有序数组(长度为n),求他们的中位数 见CLRS P193 9.3.8 扩展,两个不等长的数组求中位数 两个不等长的数组求第k大数 3.二维平面上有一些点,现要取一条水平线(平行于x轴),使得每个点到这条直线的距离加和最小。问这条水平线的位置
2012-09-28 13:47:58
195
原创 哈希表的应用
9月初参加阿里的笔试,遇到了这样的一道题,想借此搞清哈希表的用法,大意如下: 系统纪录考生的成绩,record数目为百万级别。每个record有一个ID,范围为1~1000万,另有3个科目ABC的分数,范围为1~100。 系统有插入 删除 查找操作,要求给出ID后快速查询每个考生成绩。 主机配置:64M内存,512M磁盘。 问题1. 设计内存数据结构和磁盘的存储结构 问题2. recor
2012-09-28 10:12:09
353
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人