有关算法导论中全域散列函数的疑问

zc198801 2010-08-08 07:48:53
小弟最近在看算法导论,有关散列表中全域散列函数有点疑问,
以140页 “设计一个全域散列函数类为例”
书上写的 ha,b(k) = ((ak+b) mod p) mod m
请问 a,b是如何生成的,如果是每次插入散列表时调用随机函数生成的,那么在查找时如何查找?
换句话说,在查找的时候,肯定还要生成新的a,b,但是新生成的a,b和原来插入时a,b不同了,如何查找原来a,b生成的关键字呢?
如果是在散列表初始化的时候用随机函数生成的,那么这样a,b都定下了,哪来下文中 "Hp,m中共有p(p-1)个散列函数"之说?(因为a,b都定死了)

求达人解惑~
...全文
226 4 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zc198801 2010-08-08
谢谢gogdizzy,原来的理解有点问题,网上曾经看了一段这个相关的代码,感觉被误导了
  • 打赏
  • 举报
回复
当然是定死的,他是告诉你a,b都可以取哪些值,但是一旦你取了,以后就都要用一样的,否则当然就乱了。
  • 打赏
  • 举报
回复
zc198801 2010-08-08
自己顶一下,没人来回答么
  • 打赏
  • 举报
回复
相关推荐
普通用户管理模块: (1)用户注册登录:用户注册为用户并登录校园学生兼职系统;用户对个人信息的增删改查,比如个人资料,密码修改。 (2)查看校园学生兼职系统的首页信息:校园学生兼职系统的首页信息包含了首页、公告消息、兼职心、兼职资讯、我的账户、我的收藏等。 (3)公告栏:在首页导航栏上我们会看到“校园论坛”这一菜单,我们点击进入进去以后,会看到所有管理员在后台发布的公告信息; (4)兼职资讯:在首页导航栏上我们会看到“兼职疫资讯”这一菜单,我们点击进入进去以后,会看到所有管理员在后台发布的兼职疫资讯信息,能够对喜欢的兼职资讯进行点赞,如果下次想要更快的找到这篇资讯,也可以进行收藏、评论; (5)兼职心:在首页导航栏上我们会看到“兼职信息”这一菜单,我们点击进入进去以后,会看到所有管理员在后台发布的兼职苗信息,我们选择想要了解兼职信息,查看兼职详情信息,可以评论+点赞+收藏; (6)我的收藏:在“我的”下可以查看管理“我的收藏”信息,可以查看收藏,也可以对不喜欢的信息进行删除收藏; 管理员管理模块: (1)登录:管理员的账号是在数据表表直接设置生成的,不需要进行注册; ……
发帖
数据结构与算法

3.2w+

社区成员

数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
帖子事件
创建了帖子
2010-08-08 07:48
社区公告
暂无公告