07-7.1.1 查找的基本概念

👋 Hi, I'm @Beast Cheng

👀 I'm interested in photography, hiking, landscape...

🌱 I'm currently learning python, javascript, kotlin...

📫 How to reach me --> 458290771@qq.com


喜欢《数据结构》部分笔记的小伙伴可以订阅专栏,今后还会不断更新。🧑‍💻

感兴趣的小伙伴可以点一下订阅、收藏、关注!🚀

谢谢大家!🙏

基本概念

查找 ------ 在数据集合中寻找满足某种条件的数据元素的过程
查找表 (查找结构) ------ 用于查找的数据集合称为查找表,它由同一类型的数据元素(或记录)组成
关键字 ------ 数据元素中唯一标识该元素的某个数据项的值,使用基于关键字的查找,查找结果应该是唯一的

Eg:

查找表:微信用户数据集(图结构)

数据元素(记录):每个用户的信息

关键字:微信号(唯一)

对查找表的常见操作

  1. 查找符合条件的数据元素
  2. 插入、删除某个元素
    只需进行操作① ------ 静态查找表 ,仅关注查找速度即可
    也要进行操作② ------ 动态查找表,除了查找速度,也要关注插入、删除操作是否方便实现

查找算法的评价指标

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

平均查找长度(ASL,Average Search Length)------ 所有查找过程中进行关键字的比较次数的平均值
A S L = ∑ i = 1 n P i C i ASL=\sum^n_{i=1}P_iC_i ASL=i=1∑nPiCi

n n n :数据元素个数
P i P_i Pi :查找第 i 个元素的概率
C i C_i Ci :查找第 i 个元素的查找长度

相关推荐
AI街潜水的八角9 分钟前
基于C++的决策树C4.5机器学习算法(不调包)
c++·算法·决策树·机器学习
白榆maple34 分钟前
(蓝桥杯C/C++)——基础算法(下)
算法
JSU_曾是此间年少39 分钟前
数据结构——线性表与链表
数据结构·c++·算法
sjsjs111 小时前
【数据结构-合法括号字符串】【hard】【拼多多面试题】力扣32. 最长有效括号
数据结构·leetcode
密码小丑1 小时前
11月4日(内网横向移动(一))
笔记
此生只爱蛋2 小时前
【手撕排序2】快速排序
c语言·c++·算法·排序算法
blammmp2 小时前
Java:数据结构-枚举
java·开发语言·数据结构
鸭鸭梨吖2 小时前
产品经理笔记
笔记·产品经理
昂子的博客2 小时前
基础数据结构——队列(链表实现)
数据结构
咕咕吖2 小时前
对称二叉树(力扣101)
算法·leetcode·职场和发展