1. 基本概念
(1)查找 —— 在数据集合中寻找满⾜某种条件的数据元素的过程称为查找
(2)查找表(查找结构)—— ⽤于查找的数据集合称为查找表,它由同⼀类型的数据元素(或记录)组成
(3)关键字 —— 数据元素中唯⼀标识该元素的某个数据项的值,使⽤基于关键字的查找,查找结果应该是唯⼀的
例如:
查找表——学⽣成绩信息(线性结构、可顺序可链式存储) 数据元素(记录)——每个学⽣的信息 关键字——学号
例如:
查找表——微信⽤户数据集(图结构) 数据元素(记录)——每个⽤户⽤户的信息 关键字——微信号
2. 对查找表的常⻅操作
①查找符合条件的数据元素
②插⼊、删除某个数据元素
静态查找表:只需进⾏操作①,仅关注查找速度即可
动态查找表:也要进⾏操作②,除了查找速度,也要关注 插/删操作是否⽅便实现
3. 查找算法的评价指标
查找⻓度——在查找运算中,需要对⽐关键字的次数称为查找⻓度
平均查找⻓度(ASL, Average Search Length)—— 所有查找过程中进⾏关键字的⽐较次数的平均值
回顾:⼆叉排序树的 ASL
评价⼀个查找算法的效率时, 通常考虑查找成功/查找失败 两种情况的 ASL
ASL 的数量级反应了 查找算法时间复杂度