- 浏览: 32361 次
- 性别:
- 来自: 天津
文章列表
转载一篇好文章:《海量数据处理常用思路和方法》
- 博客分类:
- 数据结构
转载一篇好文章:《海量数据处理常用思路和方法》
2010-02-25 15:12
大数据量,海量数据 处理方法总结
最近有点忙,稍微空闲下来,发篇总结贴。
大数据量的问题是很多面试笔试中经常出现的问题,比如baidu google 腾讯 这样的 ...
Bloom Filter
- 博客分类:
- 数据结构
一个经典的问题:
有1000瓶药物,但是其中有一瓶是有毒的,小白鼠吃了一个星期以后就会死掉,请问,在一个星期内找出有毒的药物,最少需要多少只小白鼠?
如果一个人考虑问题是二进制的考虑方法,那么肯定好不犹豫的会说10只,为什么呢?因为小白鼠能够有两种状态,1代表生,0代表死,那么10只能表示2的10次方种状态,那么也就是说能表示1024种状态,那么答案也就是10只。关于小白鼠如何吃药,读者可以仔细去想想
bloom filter实际上也是一个m位的2进制,通过hash的算法来进行映射,从而判断是否存在的一种方法。
bloom filter能够节省大量的存储空间,这个存储空间是靠牺牲准确性获得的 ...
今天被百度鄙视了,唉!还是能力不够啊。回来看网上评论一大片,自己错的实在太离谱。有一个求概率的题目,我自己萌了半天,竟然不知到这是典型的蓄水池抽样算法。。。。
问题起源于编程珠玑Column 12中的题目10,其描述如下:
http://www.cnblogs.com/HappyAngel/archive/2011/02/07/1949762.html
How could you select one of n objects at random, where you see the objects sequentially but you do not know ...
很多设备,如路由器、防火墙等等,都提供了一种远程访问与管理的接口。如Windows服务器可以利用Telnet协议进行远程管理等等。但是,Telnet不怎么安全。因为其在传输过程中,帐户与密码都是明文传输的。在网络传输过程中,这是非常危险的。因为黑客通过一些网络嗅探工具,能够轻易的窃取网络中明文传输的帐户与密码。故,笔者是不建议通过Telnet协议对网络设备与服务器进行远程管理。 针对Telnet协议不安全这种情况,有人开发出了一个SSH协议。其原理跟Telnet类似,只是其具有更高的安全性。SSH是一个运行在传输控制层上的应用程序。他跟Telnet相比,提供了强大的认证与加密性能。他可以保证 ...
在一个程序中,依据事务的隔离级别将会有三种情况发生。
◆脏读:一个事务会读进还没有被另一个事务提交的数据,所以你会看到一些最后被另一个事务回滚掉的数据。
◆ 读值不可复现:一个事务读进一条记 ...
关于Interupt
- 博客分类:
- Java
看了这篇博文,才发现自己多线程编程确实还没入门。。。。。。
http://blog.csdn.net/axman/article/details/562249
[线程的中断]
不客气地说,至少有一半人认为,线程的"中断"就是让线程停止.()
如果你也这么认为,那你对多 ...
mysql数据库索引原理
- 博客分类:
- mysql
http://www.codinglabs.org/html/theory-of-mysql-index.html
好文章!
http://blog.csdn.net/forfuture1978/article/details/4711308
一般的字符串匹配,时间复杂度是O(m*n),KMP算法的时间复杂度为O(m+n).
一般的字符串匹配过程,一次匹配失败后,指针i(指向原串),指针j(指向子串)都回退至初始位置。而KMP核心思想是计算子串的next函数值(这个可以通过对子串进行预处理得到),据此决定指针i,j的指向。而子串的next函数值与原串无关,其实质是比较子串中末几位与首几位相同的位数情况。
关于如何求得next函数值:
(1)next[0]= -1 意义:任何串的第一个字符的模式值规定为-1。
(2)next[j]= -1 意义:模式串T中下标为j的字符,如果与首字符
相同,且 ...
Java Web应用的生命周期
- 博客分类:
- Java
淘宝面试的时候问过我关于Servlet生命周期的问题,当时支支吾吾的没答上来。今天看看到一本书上讲的挺详细的,顺便记录下来。好记性不如烂笔头啊。
Java Web应用的生命周期是由Servlet容器来控制的,归纳起来包含3个阶段:
启动阶段:(1)Servlet容器加载web.xml文件中的数据到内存;
(2)为应用创建一个ServletContext对象
(3)对Filter进行初始化
(4)对需要在应用启动阶段就被初始化的Servlet进行初始化。Servlet的初始化包含四个阶段:a ...
http://suhuanzheng7784877.iteye.com/blog/1122131
继续说点《Java面试宝典》上的事。
对于java中的final,也是面试的热门考点之一,记得淘宝面试时候,浚哥就曾给我出过这方面的题。但是当时太弱,竟然没见过 方法参数中 带final的变量。还好在浚哥的提示下,我就把之前记过的final balabala的说了一大堆,自我感觉还是挺满意的。
今日一看书上的解释,“定义方法中的参数为final,对于基本类型的变量,这样做并没有实际意义。。。。。。”,顿时大囧:难道当时答错了?
疑惑之余,赶紧编代码测试了下,然后上网查了查,事实证明,这本书上的说法有误。我忽然想起来网上有评论这本书漏洞百出,比起其前辈《程序员面试宝 ...
国庆7天假根本没时间玩,得好好准备下找工作的事情。回到学校看同学桌子上有一本《Java面试宝典》,还是新书,不错!我就喜欢看新书,顺便补补基础吧。
关于那啥i++,++i的问题,想必也是老生常谈了,我之前直接的理解就是:对于i++,先返回i的值,然后再做++,而++i是先做++,再返回i的值。
比如i=0;此时 System.out.print(i++),输出的是0.而对于System.out.print(++i),输出的就是1了。
以上都是简单的理解,今天却碰到一个System.out.print(i+++i+++i+++(++i))的,立马就晕了。感觉不是很明 ...