Hash表的“查找成功的ASL”和“查找不成功的ASL” ASL指的是 平均查找时间 关键字序列:(7、8、30、11、18、9、14) 散列函数: H(Key) = (key x 3) MOD 7 装载因子: 0.7 处理冲突:线性探测再散列法 查找成功的ASL计算方法: 因为现在的数据是7个,填 ...
分类:
其他好文 时间:
2017-11-04 11:20:29
阅读次数:
85
插入删除接近常量,大o表示法最快的方式哈希表查询也快,但是底层存储结构是数组,一旦创建无法改变大小哈希表无法用来有序遍历冲突的解决方法:开放地址法(线性探测,二次探测,再哈希)和链地址法 ...
分类:
其他好文 时间:
2017-10-23 18:13:54
阅读次数:
154
哈希表中,关键值通过哈希函数映射到数组上,查找时通过关键值直接访问数组。哈希表的关键问题在于哈希函数的构造和解决冲突的方法。 下面采用最简单的线性探测展示一下哈希表的基本操作: ...
分类:
其他好文 时间:
2017-07-06 23:56:02
阅读次数:
208
开放定址法解决散列冲突时主要有线性探测法,平方探测法和双散列法,以下代码通过插入大量随机数,来统计几种探测法产生冲突的次数。 通过改变随机数组的大小,可以多次观察结果,发现每次都是双散列产生的冲突次数最少,但是也少不了多少。 夜深了,,, 好像是陷入死循环,希望后面的代码有个break。 ...
分类:
其他好文 时间:
2017-05-06 14:22:46
阅读次数:
668
1 枚举 2 模拟 3 构造 4 位运算的应用 5 查找 5.1 二分查找 5.2 分块查找 5.3 哈希查找HASH 5.3.1 线性探测法 5.3.2 字符串与哈希 6 搜索 6.1 深度优先搜索DFS 6.1.1 剪枝 6.1.2 人工栈DFS 6.2 宽度优先搜索BFS 6.3 启发式搜索 ...
分类:
其他好文 时间:
2017-04-03 16:27:44
阅读次数:
272
原来蛤习线性探测的时候要每次加一个稍大一点的数而不是每次+1……连蛤习都不会写,我tmd是有多弱 原题: N(1<=N<=100000)头牛,一共K(1<=K<=30)种特色,每头牛有多种特色,用二进制01表示它的特色ID。比如特色ID为13(1101),则它有第1、3、4种特色。所以,我们认为第i ...
分类:
其他好文 时间:
2017-01-21 10:57:13
阅读次数:
312
使用散列的查找算法分为两步,第一步用散列函数将被查找的键转化为数组的一个索引,理想情况下不同的键都被转化为不同的索引值.而当多个键散列到相同的索引值的情况下,就需要处理碰撞冲突,为此有两种方法,拉链法和线性探测法. 散列函数用于通过键来获取其对应的索引值.好的散列函数应该具有计算简便,等价的键必然产 ...
分类:
编程语言 时间:
2016-07-17 12:16:49
阅读次数:
218
根据数据元素的关键字和哈希函数建立哈希表并初始化哈希表,用开放定址法处理冲突,按屏幕输出的功能表选择所需的功能实现用哈希表对数据元素的插入,显示,查找,删除。 初始化哈希表时把elem[MAXSIZE]、elemflag[MAXSIZE]和count分别置0。创建哈希表时按哈希函数创建哈希表,输入数 ...
分类:
其他好文 时间:
2016-06-15 14:28:56
阅读次数:
421
HashTable-散列表/哈希表,是根据关键字(key)而直接访问在内存存储位置的数据结构。它通过一个关键值的函数将所需的数据映射到表中的位置来访问数据,这个映射函数叫做散列函数,存放记录的数组叫做散列表。构造哈希表的几种方法直接定址法--取关键字的某个线性函数为散列地..
分类:
编程语言 时间:
2016-05-31 19:10:42
阅读次数:
388
说到哈希冲突,就必须谈到哈希函数了。什么时候哈希函数哈希冲突函数hv(i),用于在元素i发生哈希冲突时,将其映射至另一个内存位置。什么是哈希冲突哈希冲突即关键字不同的元素被映射到了同一个内存位置,包括由同义词冲突和非同义词冲突。处理哈希冲突的方法很多,这里浅谈一..
分类:
其他好文 时间:
2016-05-31 16:11:37
阅读次数:
271