也称二叉查找树.PPT

也称二叉查找树

概 述 7.3 散列表的查找技术 散列技术仅仅是一种查找技术吗? 散列既是一种查找技术,也是一种存储技术。 散列只是通过记录的关键码定位该记录,没有完整地表达记录之间的逻辑关系,所以,散列主要是面向查找的存储结构。 散列是一种完整的存储结构吗? 散列技术一般不适用于允许多个记录有同样关键码的情况。散列方法也不适用于范围查找,换言之,在散列表中,我们不可能找到最大或最小关键码的记录,也不可能找到在某一范围内的记录。 散列技术最适合回答的问题是:如果有的话,哪个记录的关键码等于待查值。 概 述 7.3 散列表的查找技术 散列技术适合于哪种类型的查找? 散列技术的关键问题: ⑴ 散列函数的设计。如何设计一个简单、均匀、存储利用率高的散列函数。 ⑵ 冲突的处理。如何采取合适的处理冲突方法来解决冲突。 7.3 散列表的查找技术 概 述 冲突:对于两个不同关键码ki≠kj,有H(ki)=H(kj),即两个不同的记录需要存放在同一个存储位置,ki和kj相对于H称做同义词。 7.3 散列表的查找技术 概 述 关键码集合 ki ri …… …… H(ki) kj H(kj) 散列函数 7.3 散列表的查找技术 设计散列函数一般应遵循以下原则: ⑴ 计算简单。散列函数不应该有很大的计算量,否则会降低查找效率。 ⑵ 函数值即散列地址分布均匀。函数值要尽量均匀散布在

文档评论(0)

1亿VIP精品文档

相关文档