码迷,mamicode.com
首页 >  
搜索关键字:哈希表    ( 2390个结果
菜鸟nginx源码剖析数据结构篇(六) 哈希表 ngx_hash_t(上)
哈希表是一种典型的以空间换取时间的数据结构,在没有冲突的情况下,对任意元素的插入、索引、删除的时间复杂度都是O(1)。这样优秀的时间复杂度是通过将元素的key值以hash方法f映射到哈希表中的某一个位置来访问记录来实现的,即键值为key的元素必定存储在哈希表中的f(key)的位置。当然,不同的元素的hash值可能相同,这就是hash冲突,有两种解决方法(分离链表发和开放地址发),ngx采用的是开放地址法....
分类:其他好文   时间:2014-11-03 13:05:13    阅读次数:363
浅谈算法和数据结构: 十一 哈希表
在前面的系列文章中,依次介绍了基于无序列表的顺序查找,基于有序数组的二分查找,平衡查找树,以及红黑树,下图是他们在平均以及最差情况下的时间复杂度:可以看到在时间复杂度上,红黑树在平均情况下插入,查找以及删除上都达到了lgN的时间复杂度。那么有没有查找效率更高的数据结构呢,答案就是本文接下来要介绍了散...
分类:编程语言   时间:2014-10-31 23:36:25    阅读次数:387
Appium Android Bootstrap源码分析之命令解析执行
通过上一篇文章《Appium Android Bootstrap源码分析之控件AndroidElement》我们知道了Appium从pc端发送过来的命令如果是控件相关的话,最终目标控件在bootstrap中是以AndroidElement对象的方式呈现出来的,并且该控件对象会在AndroidElementHash维护的控件哈希表中保存起来。但是appium触发一个命令除了需要提供是否与控件相关这个...
分类:移动开发   时间:2014-10-31 13:51:37    阅读次数:339
第八章——对象
因为JavaScript是一种基于原型的语言,所有JavaScript中对象的工作方式,与其他基于类的语言中的对象不同。JavaScript对象基本上是属性和值的集合,这在编程中称为哈希表(hash table)。其中的值可以是任...
分类:其他好文   时间:2014-10-30 00:29:40    阅读次数:186
[LeetCode]Valid Sudoku解题记录
这道题考查对二维数组的处理,哈希表。 1.最自然的方法就是分别看每个数是否符合三个规则,所以就需要相应的数据结构来 记录这些信息,判定是否存在,显然最先想到用哈希表。 2.学会把问题抽象成一个个的子问题。 3.在索引的构建上下工夫。 4.底层数组如何对应的细节没有那么重要,重要的是构成了问题的全集。 代码: 附图:一趟遍历时根据i,j,对应到具体的grid,这里的构造模式有多种(??...
分类:其他好文   时间:2014-10-29 22:20:29    阅读次数:212
C#集合
转自:http://www.cnblogs.com/feisky/archive/2009/10/29/1591956.htmlSystem.Collections 命名空间包含接口和类,这些接口和类定义各种对象(如列表、队列、位数组、哈希表和字典)的集合。System.Collections.Ge...
分类:Windows程序   时间:2014-10-29 21:17:10    阅读次数:264
poj 1035 Spell checker
题目链接:http://poj.org/problem?id=1035思路:1、使用哈希表存储字典2、对待查找的word在字典中查找,查找成功输出查找成功信息3、若查找不成功,对word增、删、改处理,然后在字典中查询,若查找成功则记录处理后单词在字典中的次序4、对次序排序再输出注:对word处理后...
分类:其他好文   时间:2014-10-28 00:42:50    阅读次数:202
trie数的实现
Trie树又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希表高。 ...
分类:其他好文   时间:2014-10-27 21:08:03    阅读次数:205
常用的查找算法
顺序查找二分法查找分块查找散列表查找(哈希表)顺序查找的基本思想:从表的一端开始,顺序扫描表,依次将扫描到的结点关键字和给定值(假定为a)相比较,若当前结点关键字与a相等,则查找成功;若扫描结束后,仍未找到关键字等于a的结点,则查找失败。说白了就是,从头到尾,一个一个地比,找着相同的就成功,找不到就...
分类:编程语言   时间:2014-10-26 21:12:22    阅读次数:278
哈希表之bkdrhash算法解析及扩展
BKDRHASH是一种字符哈希算法 由一个字符串(比如:ad)得到其哈希值,为了减少碰撞,应该使该字符串中每个字符都参与哈希值计算,使其符合雪崩效应,也就是说即使改变字符串中的一个字节,也会对最终的哈希值造成较大的影响。我们直接想到的办法就是让字符串中的每个字符相加,得到其和SUM,让SUM作为哈希值,如SUM(ad)= a+d;可是根据ascii码表得知a(97)+d(100)=b(98)+c...
分类:编程语言   时间:2014-10-24 14:35:16    阅读次数:161
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!