1、散列码:
Object中的HashCode方法会返回该对象的的内存真实地址的整数化表示,这个形象的不是真正抵制的整数值就是哈希码。
2、利用哈希码向集合中插入数据的顺序?
向HashSet中添加对象时,HashSet先通过该对象的HashCode()计算出相应的桶,然后再根据equals()方法找到相应的对象,如果容器中已存在该对象则不再添加,如果...
分类:
其他好文 时间:
2014-11-16 16:03:48
阅读次数:
155
所谓数据结构,即是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成。常见的数据结构包括:数组,栈,队列,链表,树,图,堆,散列表。数组 (Array)在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。在...
分类:
编程语言 时间:
2014-11-15 12:44:32
阅读次数:
151
原文: Mysql高级之索引 索引:是针对数据所建立的目录.
作用:可以加快查询速度
负面影响:降低了增删改的速度. 索引的创建原则:
1:不要过度索引
2:在where条件最频繁的列上加.在重复度高的列上不加,比如性别男女;
3:尽量索引散列值,过于集中的值加索引意义不大. 索引的类型
普通索引:...
分类:
数据库 时间:
2014-11-14 19:21:52
阅读次数:
280
目录 引言 二叉查找树节点定义查找操作插入操作删除操作 二叉查找树存在问题 完整源码讨论区 参考资料内容 1、引言 前面的文章介绍过二分查找、散列表查找;二分查找效率为Θ(lgn)、二分查找要求数组是静...
分类:
编程语言 时间:
2014-11-14 01:29:31
阅读次数:
288
【 声明:版权全部,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 hash表,有时候也被称为散列表。个人觉得,hash表是介于链表和二叉树之间的一种中间结构。链表使用十分方便,可是数据查找十分麻烦;二叉树中的数据严格有序,可是这是以多一个指针作为代价的结果。ha...
分类:
编程语言 时间:
2014-11-13 14:30:24
阅读次数:
231
介绍一下linux内核中的哈希散列表的实现,在linux内核中哈希散列表(hashlist)用的非常的多,并且自己以后在做软件设计的时候,也非常有可能用到。毕竟,哈希散列表在数据的查找过程中非常的方便。linux内核对哈希散列表的实现非常的完美,所以非常有必要学习一下。在哈希散列表..
分类:
系统相关 时间:
2014-11-13 07:06:38
阅读次数:
261
所谓的有序表表,顾名思意啊,有序表应该就是数据是有一定顺序排列的,准确定义为:线性表中所有元素以递增或递减方式排列,并规定有序表中不存在不存在元素值相同的元素。
他是逻辑上的概念,不是物理上的。
逻辑结构类型有,线性结构,树形结构,图形结构,表示每个节点之间的组织结构。物理上的结构有顺序存储结构,链式存储结构, 索引存储和哈希散列,表示逻辑上的数据结构以什么样的方式存储在存储设备上。
顺序表...
分类:
其他好文 时间:
2014-11-12 13:50:35
阅读次数:
214
MD5算法的全称是Message Digest Algorithm(消息摘要算法第五版),是计算机安全领域广泛使用的一个压缩加密的哈希算法,主要提供消息完整化。知道这个算法可以压缩加密就可以了。
算法的主要思想就是:讲输入的信息分割成许多分组(长度为L),每个分组有512位(注意是位,MD5中是以位操作的)。然后又将每个分组划分为16个分组,每个分组有32组,经过一些处理后,输出一个128位的散列值。...
分类:
编程语言 时间:
2014-11-11 22:55:52
阅读次数:
276
1.线性探测法 就是当要插入的行号发生冲突时,往下一个行号存放哈希值,直到没有冲突。2.分离链接法 就是将一个行号做成链表的形式,如果有这个行号的冲突便新建一个节点将其插入这个行号的链表中。 在Mahout中,FastByIDMap是基于散列的,但它在处理散列冲突时使用的是线性探测,而非分离...
分类:
其他好文 时间:
2014-11-10 17:01:54
阅读次数:
202
如果表够大,散列函数足够好,那么散列表在查找上具有O(1)的时间复杂度。但是我们考虑出现冲突的情况,如果使用分离链表法来处理冲突。那么链表的平均长度等于装填因子a(元素个数与散列表大小的比值)的大小。所以不成功查找的复杂度为a,成功查找的复杂度为1 + a/2。代码实现如下: 1 #include....
分类:
其他好文 时间:
2014-11-10 01:00:12
阅读次数:
200