查找 本文为查找算法的第一部分内容,包括了基本概念,顺序查找、二分查找和索引查找。关于散列表和B树查找的内容,待有空更新吧。 基本概念 查找(search)又称检索,在计算机上对数据表进行查找,就是根据所给条件查找出满足条件的第一条记录(元素)或全部记录。 若没有找到满足条件的记录,则返回特定值,表 ...
分类:
编程语言 时间:
2016-06-27 21:43:46
阅读次数:
203
本章介绍了散列表(hash table)的概念、散列函数的设计及散列冲突的处理。散列表类似与字典的目录,查找的元素都有一个key与之对应,在实践当中,散列技术的效率是很高的,合理的设计散函数和冲突处理方法,可以使得在散列表中查找一个元素的期望时间为O(1)。散列表是普通数组概念的推广,在散列表中,不 ...
分类:
编程语言 时间:
2016-06-24 08:07:13
阅读次数:
383
http://www.cnblogs.com/lucifer1982/archive/2008/06/18/1224319.html 作者:Angel Lucifer 引子 这篇仍然不讲并行/并发。 Hash table,国内相当一部分书籍将其直译为哈希表,但博主本人喜欢称其为散列表。 散列表支持任 ...
分类:
其他好文 时间:
2016-06-22 10:58:24
阅读次数:
224
课本源码部分 第9章 查找 - 哈希查找表/散列表 ——《数据结构》-严蔚敏.吴伟民版 源码使用说明 链接??? 《数据结构-C语言版》(严蔚敏,吴伟民版)课本源码+习题集解析使用说明 课本源码合辑 链接??? 《数据结构》课本源码合辑 习题集全解析 链接??? 《数据结构题集》习题解析合辑 本源码 ...
分类:
其他好文 时间:
2016-06-22 06:50:18
阅读次数:
136
前言:ECMA-262将对象定义为:"无序属http://blog.csdn.net/csdnproduct/article/details/12423189性的集合,其属性可以包含基本值,对象或者函数"。这就相当于说对象是一组没有特定顺序的值。对象的每个属性或方法都有一个名字,而每个名字都映射到一个值。正因为这样,我们可以把ECMAScript的对象看成散列表:一组名值对,值可以是数据或函数。(每个对象都是基于一个引用类型创建的)
对象理解
1.属性类型
ECMAScript中有两种属...
分类:
Web程序 时间:
2016-06-21 07:32:31
阅读次数:
297
哈希表也称为散列表,是根据关键字值(key value)而直接进行访问的数据结构。也就是说,它通过把关键字值映射到一个位置来访问记录,以加快查找的速度。这个映射函数称为哈希函数(也称为散列函数),映射过程称为哈希化,存放记录的数组叫做散列表。比如我们可以用下面的方法将关键字映射成数组的下标:arrayIndex
= hugeNumber % arraySize。
哈希化之...
分类:
其他好文 时间:
2016-06-12 03:27:45
阅读次数:
211
一、Redis简介 redis是一个高性能的key-value非关系数据库,它可以存键(key)与5种不同类型的值(value)之间的映射(mapping),支持存储的value类型包括:String(字符串)、list(链表)、set(集合)、zset(有序集合)和hash(散列表)。这些收据类型 ...
分类:
其他好文 时间:
2016-06-11 17:20:44
阅读次数:
272
#pragmaonce
#include<iostream>
#include<string>
usingnamespacestd;
enumState
{
EMPTY,
DELETE,
EXIST,
};
template<classK,classV>
structHashTableNode
{
K_key;
V_value;
};
template<classK>
struct__HashFunc//默认的返回哈希键值key的仿函数..
分类:
其他好文 时间:
2016-06-11 07:09:45
阅读次数:
186
哈希算法的编写 hash表,有时候也被称为散列表。个人认为,hash表是介于链表和二叉树之间的一种中间结构。链表使用十分方便,但是数据查找十分麻烦;二叉树中的数据严格有序,但是这是以多一个指针作为代价的结果。hash表既满足了数据的查找方便,同时不占用太多的内容空间,使用也十分方便。 打个比方来说, ...
分类:
编程语言 时间:
2016-06-05 11:06:36
阅读次数:
201
1、二分查找 二分查找时,先将被查找的键和子数组的中间键比较。如果被查找的键小于中间键,就在左子数组继续查找,如果大于中间键,就在右子数组中查找,否则中间键就是要找的元素。 每次移动left和right指针的时候,需要在mid的基础上+1或者-1, 防止出现死循环, 程序也就能够正确的运行。 但如果 ...
分类:
编程语言 时间:
2016-06-05 07:36:01
阅读次数:
392