Ziplist是用字符串来实现的双向链表,对于容量较小的键值对,为其创建一个结构复杂的哈希表太浪费内存,所以redis 创建了ziplist来存放这些键值对,这可以减少存放节点指针的空间,因此它被用来作为哈希表初始化时的底层实现。
分类:
其他好文 时间:
2014-06-25 19:06:54
阅读次数:
187
线性表、链表、哈希表是常用的数据结构,在进行Java开发时,SDK已经为我们提供了一系列相应的类来实现基本的数据结构。这些类均在java.util包中。
一、Collection接口
Collection是最基本的集合接口,一个Coll...
分类:
编程语言 时间:
2014-06-19 10:27:16
阅读次数:
307
本节介绍如何在程序中表示一张图。
顶点
在程序中,顶点用整数表示就可以了。因为整数可以作为数组的下标,也可以作为哈希表的键。所以用整数是最方便的。
当然,在一张图中可能会出现一些异常情况,比如自己连接自己,两个顶点之间存在多个边。这些异常情况也是要考虑的。
接口
为了表示一张图,就要创建专...
分类:
其他好文 时间:
2014-06-18 06:56:36
阅读次数:
208
可以通过哈希表实现高效的集合操作。
接口
一个集合对象可以包含了以下接口:
public interface Set> {
public void add(Key key);
public boolean contains(Key key);
public void remove(Key key);
public int siz...
分类:
其他好文 时间:
2014-06-17 22:28:05
阅读次数:
288
战争故事
很久很久以前,曾经发生过很多关于哈希函数的战争故事。那些战争的基本原理就是通过精心构造造成大量的哈希冲突从而占用大量的CPU资源。
被攻击的软件例有以下例子:
带有漏洞的服务器:攻击者精心构造哈系冲突,只需要56K的网速就能让服务器死机,从而达到DOS攻击的目的。
Perl 5.8.0:攻击者精心构造哈系冲突插入到关...
分类:
其他好文 时间:
2014-06-17 21:48:18
阅读次数:
206
request.getAttribute()与request.setAttribute()
request.getAttribute("nameOfObj")可得到JSP页面一表单中控件的Value。其实表单控件中的Object的 name与value是存放在一个哈希表中的,所以在这里给出Object的name会到哈希表中找出对应它的value。
而不同页面间传值使用request.s...
分类:
其他好文 时间:
2014-06-15 15:59:18
阅读次数:
130
SSH 框架下code:
public String deleRubbishAd(){
int deleADcount = 0;
rubbishADtp = configDao.rubbishADtp();
//数据库中的广告图片集合
Map shujuku= new HashMap();
File adfile = new File("C://Program Files//A...
分类:
数据库 时间:
2014-06-15 15:55:30
阅读次数:
252
1.稀疏数据的例子 对于网络图对应的节点关联矩阵、数据生成的哈希表等,这些存储起来是稀疏的,这样我们就会想到需要压缩空间。但是在压缩存储空间的同时,还要支持高效的查询操作。 Rank & Select 就可以对稀疏的数据进行压缩,还能支持高效的查询操作。2.Rank & Select 操作压缩稀.....
分类:
其他好文 时间:
2014-06-14 15:47:55
阅读次数:
245
1. 查找和排序查找:顺序查找、二分查找、二叉搜索树、哈希表顺序查找:T(n) = O(n)
std::find二分查找:T(n) = O(log n) std::binary_search std::lower_bound
std::upper_bound哈希表: T(n) = O...
分类:
其他好文 时间:
2014-06-11 07:45:31
阅读次数:
250
twitter对存档的tweet使用lucene做全量索引,新发的推文则是实时索引,实时检索(10秒之内索引)。实时索引和检索系统叫EarlyBird。
感觉写得比较清楚简洁,只要这些信息足够真实可信,完全可以做实现参考。
我简单做了几个记录:
1)基于lucene + java,michael busch是lucene committer
2)词典直接用哈希表,因此不支持term的pr...
分类:
其他好文 时间:
2014-06-08 05:51:59
阅读次数:
482