B树
- 概念
- 查找效率
- B树的高度
- B树的插入
- 总结
B树和B+树的区别
散列查找
-
概念:
- 散列表(Hash Table):又称哈希表,是一种数据结构,特点是:数据元素的关键字与其存储地址直接相关
- 白话:数据元素的关键字与实际存储地址有一个映射关系
- 通过“散列函数(哈希函数)”:Addr=H(key)
-
tip:
- 若不同的关键字通过散列函数映射到同一个值,则称它们是“同义词”
- 通过散列函数确定的位置已经存放了其他元素,则称之为“冲突”
-
拉链法(链接法、链地址法):处理“冲突”:把所有“同义词”存储在一个链表中
- 查找成功的概率
- 查找失败的概率
- 常见的散列函数:要结合实际的关键字分布特点来考虑,不要教条化
(1)
(2)
(3)
(4)
散列查找是典型的“用空间换时间”的算法,只要散列函数设计的合理,则散列表越长,冲突的概率就越低
- 处理“冲突”方法2:开放定址法
- 总结: