查找
静态查找
抽象数据类型定义
ADT StaticSearchTable{
数据对象D:D是具有相同特性的数据元素的集合。各个数据元素均含有类型相同,可唯一标识数据元素的关键字。
数据关系R:数据元素同属于一个集合。
基本操作P:
Create(&ST,n)
操作结果:构造一个含n个数据元素的静态顺寻查找表ST.
Destroy(&ST)
初始条件:静态查找表ST存在。
操作结果:销毁表ST.
Search(St,key)
初始条件:静态查找表ST存在,key为和关键字类型相同的给定值。
操作结果:若ST中存在关键字等于key的数据元素,则函数值为该元素在表中的位置,否则为空。
Traverse(ST,Visit())
初始条件:静态查找表ST存在,Visit()是对元素操作的应用函数。
操作结果:按某种次序对ST的每个元素调用函数Visit()一次且仅一次。一旦Visit()失败,则操作失败。
}ADT StaticSearchTable
- 顺序查找
- 折半查找
- 分块查找(索引顺序查找)
- Fibonacci查找
动态查找
- 二叉排序树(BST)
- 平衡二叉树(AVL)
- 平衡化旋转
- LL型平衡化旋转
- LR型平衡化旋转
- RL型平衡化旋转
- RR型平衡化旋转
索引查找
- 顺序索引表
- 树形索引表
- B_树
- B+树
哈希(散列)查找
- 函数函数的构造
- 直接定址法
- 数字分析法
- 平方取中法
- 折叠法
- 除留余数法
- 随机数法
- 冲突处理的方法
- 开方地址法
- 再哈希法
- 链地址法
- 建立公共溢出区