数据结构学习笔记(五)——查找

六、 查找

1. 查找的基本概念

2. 顺序查找和折半查找

1. 顺序查找

  1. 一般线性表的顺序查找
  2. 有序表的顺序查找

2. 折半查找

3. 分块查找

3. B树和B+树

1. B树及其基本操作

B树,又称多路平衡查找树,B树种所有结点的孩子结点数的最大值称为B数的阶,通常用m表示。一棵m阶B数或为空树,或为满足如下特性的m叉树:
 树中每个结点至多有m棵子树(即至多有m-1个关键字);
 若根结点不是终端结点,则至少由两棵子树。
 除根结点外的所有非叶结点至少有[m/2](向上取整)棵子树(即至少含有[m/2]-1(向上取整)个关键字)
 ……
 ……

  1. B树的高度(磁盘存取次数)
  2. B树的查找
  3. B树的插入
    分裂
  4. B树的删除
    直接删除
    兄弟够借
    兄弟不够借

2. B+树的基本概念

4. ★散列表

1. 散列表的基本概念

2. 散列函数的构造方法

  1. 直接定址法
  2. 除留余数法
  3. 数字分析法
  4. 平方取中法
  5. 折叠法

3. 处理冲突的方法

  1. 开放定址法
  2. 拉链法(链接发)
  3. 散列查找及性能分析

5. ★串

1. 串的定义

2. 串的存储结构

  1. 定长顺序存储表示
  2. 堆分配存储表示
  3. 块链存储表示

3. 串的基本操作

4. 串的模式匹配

5. 改进的模式匹配算法——KMP算法

  1. 字符串的前缀、后缀和部分匹配值
  2. KMP算法的原理是什么?