查找

查找(Searching)是数据结构中的核心操作之一,旨在确定给定值是否存在于数据集合中,并返回其位置。高效的查找算法对于提升程序性能至关重要。

本章要解决的问题

在数据规模越来越大、查找越来越频繁的现实场景中,如何在尽可能少的比较次数内找到目标元素?本章围绕”查找效率”这一核心问题,介绍从简单到复杂的各类查找算法及其适用场景。

学习目标

  • 掌握顺序查找、折半查找、分块查找的基本思想与复杂度
  • 理解 B 树、B+ 树的结构特点与查找过程
  • 掌握哈希表的构造、冲突处理与性能分析
  • 掌握字符串模式匹配(朴素算法与 KMP 算法)
  • 能够根据数据特点选择合适的查找算法

章节导航

子章节核心内容
顺序查找法最简单的基础查找,适用无序表
分块查找法索引 + 块内顺序查找
折半查找法有序表的高效查找,O(log2n)O(\log_2 n)
哈希表查找以空间换时间,理想 O(1)O(1)
B树及B+树查找大规模数据的磁盘索引
字符串模式匹配查找朴素算法与 KMP 算法
查找算法分析与应用综合对比与选型

建议阅读顺序

基础路线:顺序查找 → 折半查找 → 分块查找,先掌握三种基本策略。

进阶路线:哈希表 → B 树/B+ 树 → 字符串匹配,理解更复杂结构与算法。

章节