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 --> [email protected]


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

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

谢谢大家!🙏

基本概念

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

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 个元素的查找长度

相关推荐
算AI17 小时前
人工智能+牙科:临床应用中的几个问题
人工智能·算法
我不会编程55517 小时前
Python Cookbook-5.1 对字典排序
开发语言·数据结构·python
owde18 小时前
顺序容器 -list双向链表
数据结构·c++·链表·list
第404块砖头18 小时前
分享宝藏之List转Markdown
数据结构·list
hyshhhh18 小时前
【算法岗面试题】深度学习中如何防止过拟合?
网络·人工智能·深度学习·神经网络·算法·计算机视觉
蒙奇D索大19 小时前
【数据结构】第六章启航:图论入门——从零掌握有向图、无向图与简单图
c语言·数据结构·考研·改行学it
A旧城以西19 小时前
数据结构(JAVA)单向,双向链表
java·开发语言·数据结构·学习·链表·intellij-idea·idea
杉之19 小时前
选择排序笔记
java·算法·排序算法
吴梓穆19 小时前
UE5学习笔记 FPS游戏制作38 继承标准UI
笔记·学习·ue5
烂蜻蜓20 小时前
C 语言中的递归:概念、应用与实例解析
c语言·数据结构·算法