ch10-散列结构分解.pptVIP

  • 3
  • 0
  • 约8.72千字
  • 约 42页
  • 2017-06-13 发布于湖北
  • 举报
散列 散列函数 开地址散列向量 桶散列 散列 (Hashing) 在现实中经常遇到按给定的值进行查询的事例。为此, 必须考虑在记录的存放位置和用以标识它的数据项(称为关键码)之间的对应关系,选择适当的数据结构, 很方便地根据记录的关键码检索到对应记录的信息。 表项的存放位置及其关键码之间的对应关系可以用一个二元组表示: ( 关键码key,表项位置指针addr ) 这个二元组构成搜索某一指定项目的索引项。 考虑到搜索效率, 可以考虑散列表结构。 静态散列方法 散列方法在表项存储位置与其关键码之间建立一个确定的对应函数关系Hash( ),使每个关键码与结构中一个唯一存储位置相对应: Address = Hash ( Rec.key ) 在搜索时, 先对表项的关键码进行函数计算,把函数值当做表项的存储位置, 在结构中按此位置取表项比较。若关键码相等, 则搜索成功。在存放表项时, 依相同函数计算存储位置, 并按此位置存放。此方法称为散列方法。 在散列方法中使用的转换函数叫做散列函数。按此方法构造出来的表或结构就叫做散列表。 使用散列方法进行搜索不必进行多次关键码的比较, 搜索速度比较快, 可以直接到达或逼近具有此关键码的表项的实际存放地址。 散列函数是一个压缩映象函数。关键码集合比散列表地址集合大得多。因此有可能经过散列函数

文档评论(0)

1亿VIP精品文档

相关文档