查找:基本概念

1.基本概念

1.查找

在数据集合中寻找满足某种条件的数据元素的过程称为查找。

2.查找表(查找结构)

用于查找的数据集合称为查找表,它由同一类型的数据元素(或记录)组成。

3.关键字

数据元素中唯一标识该元素的某个数据项的值,使用基于关键字的查找,查找结果应该是唯一的。

例如:微信号,QQ号

2.查找表的常见操作

1.查找符合条件的数据元素

  • 静态查找表:只需要关注查找速度即可。

2.插入、删除某个数据元素

  • 动态查找表:除了关注查找速度,还需要关注插入,删除是否方便。

3.评价查找算法的指标

1.查找长度

在查找运算中,需要对比关键字的次数称为查找长度。

2.平均查找长度

(ASL,Average Search Length)

所有查找过程中进行关键字的比较次数的平均值。

  1. 计算方法:所有 查找元素的查找长度乘以其对应的概率之和。(通常认为查找任何一个元素的概率都相同)
  2. ASL指标可以运用到二叉排序树。
  3. 通常考虑查找成功、查找失败两种情况下的ASL。
相关推荐
高亦真13 分钟前
今天是学习嵌入式的第32天
linux·学习·算法
鹿角片ljp8 小时前
LeetCode 236. 二叉树的最近公共祖先|递归后序
算法
luj_17689 小时前
大律师考核应重能力与科技素养
c语言·开发语言·c++·经验分享·算法
无定义_9 小时前
Floyd——Warshall
算法
带多刺的玫瑰10 小时前
Leecode#9刷题之回文数
数据结构·算法
泯泷10 小时前
手搓JSVM第 5 篇:写第一个编译器:从 AST 生成 IR
前端·javascript·算法
泯泷10 小时前
手搓JSVM第 7 篇:控制流:if、while 与 jump
前端·javascript·算法
泯泷10 小时前
手搓JSVM第 6 篇:把 IR 编成字节码:emit 与 label fixup
前端·javascript·算法
泯泷10 小时前
手搓JSVM第 3 篇:从栈式 VM 到寄存器式 VM:为什么我们选择寄存器
前端·javascript·算法
泯泷10 小时前
第 4 篇:让 VM 支持变量:Slot、Environment 与 TDZ
前端·javascript·算法