最新 | 最热门 | 最高评价

+0  海量数据处理专题(二)——Bloom Filter

Tag: 海量数据 | 数据结构与算法
redfox66 发于 2010年09月24日 14:49 | 点击: 1955 | 展开摘要
【什么是Bloom Filter】

Bloom Filter是一种空间效率很高的随机数据结构,它利用位数组很简洁地表示一个集合,并能判断一个元素是否属于这个集合。Bloom Filter的这种高效是有一定代价的:在判断一个元素是否属于某个集合时,有可能会把不属于这个集合的元素误认为属于这个集合(false positive)。因此,Bloom Filter不适合那些“零错误”的应用场合。而在能容忍低错误率的应用场合下,Bloom Filter通过极少

查看全文: http://www.udpwork.com/item/3770.html

+0  海量数据处理专题(一)——开篇

Tag: 海量数据 | 数据结构与算法
redfox66 发于 2010年09月24日 14:23 | 点击: 2184 | 展开摘要
  大数据量的问题是很多面试笔试中经常出现的问题,比如baidu google 腾讯 这样的一些涉及到海量数据的公司经常会问到。 

  下面的方法是我对海量数据的处理方法进行了一个一般性的总结,当然这些方法可能并不能完全覆盖所有的问题,但是这样的一些方法也基本可以处理绝大多数遇到的问题。下面的一些问题基本直接来源于公司的面试笔试题目,方法不一定最优,如果你有更好的处理方法,欢迎与我讨论。 

  本贴从解决这类问题的方法入手,开辟一系列专题来解决海量数据

查看全文: http://www.udpwork.com/item/3771.html

+0  计算机编程简史图

Tag: Unix/Linux | 技术读物 | 编程语言 | programming language | Unix | 算法
陈皓 发于 2010年07月26日 07:54 | 点击: 2980 | 展开摘要
这个图片太经典了,本来想翻译的,后来觉得这么经典的图片可能早已被人翻译了,简单的Google一下,果然有人翻译了。那我就把英文版和中文版都转过来吧。我们可以看到,其中很大一部分人都和Unix有着不解之缘(参见《Unix传奇上篇,Unix传奇下篇》)

英文原版

中文翻译版

什么也不说了,直接上图(图片比较大,单击图片看大图)

计算机编程简史图(英文版)

计算机编程简史图(中文版)

相关文章
2010年08月24日 -- 使用grep恢复被删文件内容
2010年0

查看全文: http://www.udpwork.com/item/2169.html

+0  zoie DocIDMapperImpl类实现分析

Tag: java | search | bloom filter | zoie | 源码分析 | 算法
kafka0102 发于 2010年07月17日 04:55 | 点击: 2361 | 展开摘要
有网友留言询问我对zoie的DocIDMapperImpl实现是否有了解。说实话,之前看zoie也只是大面上的,知道DocIDMapperImpl的用处,但没有仔细分析它的算法。就趁着夜深人静,把这个类好好琢磨了下。但我得承认,看这种伤脑筋的算法让我有些吃不消,下面就列出我对它的大致分析,如果有不恰当的地方,也望指正。

还是说下DocIDMapperImpl的作用吧。在zoie中,uid和lucene的docid有一一对应关系。从docid到uid的映射很简单,就是分配个m

查看全文: http://www.udpwork.com/item/2066.html

+0  一些重要的算法

Tag: 程序设计 | 编程语言 | Algorithm | 排序 | 算法
陈皓 发于 2010年07月12日 08:27 | 点击: 2419 | 展开摘要
下面是一些比较重要的算法,原文罗列了32个,但我觉得有很多是数论里的,和计算机的不相干,所以没有选取。下面的这些,有的我们经常在用,有的基本不用。有的很常见,有的很偏。不过了解一下也是好事。也欢迎你留下你觉得有意义的算法。(注:本篇文章并非翻译,其中的算法描述大部份摘自Wikipedia,因为维基百科描述的很专业了)

A*搜寻算法

俗称A星算法。这是一种在图形平面上,有多个节点的路径,求出最低通过成本的算法。常用于游戏中的NPC的移动计算,或线上游戏的BOT的移动计算上。

查看全文: http://www.udpwork.com/item/2018.html

+0  二进制的二三事

Tag: 算法学习 | Algorithm | 二进制 | 面试
Guancheng (G.C.) 发于 2010年05月15日 18:14 | 点击: 2164 | 展开摘要
二进制是计算机的自然语言,逻辑门中神奇的0/1组合犹如那起起伏伏的“滴答”之声构成了曼妙的电子世界。不仅如此,二进制中的0和1往往也是我们解决实际问题的利器。

Task1:求一个固定长度集合所有子集

最直观的方法就是穷举:对集合中的每个元素来说它要么在当前子集中,要么不在当前子集中,以此依次类推穷举出所有可能的值。如果我们用0表示该元素在当前子集中,用1表示该元素不在当前子集中,我们就可以用一串0/1序列来表示当前的子集。

例如集合{a, b, c, d, e}中的子集

查看全文: http://www.udpwork.com/item/1420.html

+0  话说那个快速排序

Tag: Python | 开发技术 | 算法 | 语言 | python | 快速排序
雨水无香 发于 2010年05月05日 10:24 | 点击: 2046 | 展开摘要
一直没好好写过快速排序,全是用函数式投机取巧的,今天就来写一下吧……python写的,用了命令式(qsort1)和函数式(qsort2)两种写法。算法是参考scala by example写的,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44

#!/usr/bin/e

查看全文: http://www.udpwork.com/item/1307.html

+0  一种常用的hash算法

Tag: 开发技术 | 算法 | hash | times33 | 哈希
雨水无香 发于 2010年04月28日 23:27 | 点击: 3320 | 展开摘要
话说一面时文就遇到了当场写一个哈希算法的问题,后来和小胖聊时,小胖说哈希属于比较简单的算法,电话面试可能也会被问到,于是准备一个吧。算法导论那边散列函数看过一些,不过脑子里还是没有一个完整的概念,之前MD5、SHA1什么的也用过,但是就是不知道这个普通的哈希算法怎么写,今晚在晚上研究了一下,下面写写心得。

其实哈希的目标就是将不定长的东西映射成为定长的形式,当然如果数据量足够大,必然会出现重复,但是散列表会利用一些机制避免重复,当然一般重复的概率比较低。有一种叫做times

查看全文: http://www.udpwork.com/item/1163.html

+0  今天做的链表算法练习(C语言描述)

Tag: C | 语言 | 算法 | 练习 | 链表
雨水无香 发于 2010年03月31日 18:54 | 点击: 2107 | 展开摘要
废话不多说,直接上代码,其实觉得不如把static函数改成marco效率会更好一些,不过面向对象写多了,还是有方法癖……

下面是list.h:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

#include <stdio.h>
#include <stdlib.h>
 
typedef struct NODE {
int key;
struct NODE *pr

查看全文: http://www.udpwork.com/item/878.html

+0  C 语言的数据序列化

Tag: 算法 | 语言与设计
云风 发于 2010年03月31日 00:53 | 点击: 2089 | 展开摘要
数据结构的序列化是个很有用的东西。这几天在修改原来的资源管理模块,碰到从前做的几个数据文件解析的子模块,改得很烦,就重新思考序列化的方案了。

Java 和 .Net 等,由于有完整的数据元信息,语言便提供了完善的序列化解决方案。C++ 对此在语言设计上有所缺陷,所以并没有特别好的,被所有人接受的方案。

现存的 C++ serialization 方案多类似于 MFC 在二十年前的做法。而后,boost 提供了一个看起来更完备的方案( boost.serialization

查看全文: http://www.udpwork.com/item/1826.html

+0  An interesting algorithm problem: the longest plateau

Tag: 算法学习 | Algorithm
Guancheng (G.C.) 发于 2009年11月13日 06:30 | 点击: 2175 | 展开摘要
Recently I met an interesting algorithm problem:

Problem:

Given an array, try to develop an efficient algorithm which can compute the length of the longest plateau. A plateau is a consecutive segment of an array with equal contents. For e

查看全文: http://www.udpwork.com/item/1202.html
|<<<6789101112>>>| 一共12页, 143条记录