社区
非技术类
帖子详情
散分,只给第一个
lizhongkun
2002-04-14 02:30:50
只给第一个
...全文
17
3
打赏
收藏
散分,只给第一个
只给第一个
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
likun2xlin
2002-04-14
打赏
举报
回复
给我吧
lizhongkun
2002-04-14
打赏
举报
回复
怎么没有人要
lizhongkun
2002-04-14
打赏
举报
回复
谢谢
C语言写一个散列表
文章目录快速理解散列表散列函数防撞 快速理解散列表 散列表,就是下标可以为字母的数组。 假设现有一个数组int a[100],想查找其中第40个元素,则直接输入a[40]就可以了,时间复杂度为O(1)O(1)O(1)。 问题在于,当下标不是数字,而是一个字符串的时候,可能需要一个超大的空间才能将所有下标妥善地存放在特定的位置。例如,若以大小写字母作为下标索引,那么一位就需要预留52个空间,10位就需要521052^{10}5210这么大的空间,根本没有设备可以满足。 好在,521052^{10}5210这么
散列表查找 (15 分)
设散列表a[18],散列函数是hask(k)=k%17,用开放地址法解决冲突hi=(h0+di)%m。冲突时采用平方探测法,使用增量序列di=i* i。计算输入序列(值>=0)对应的散列地址并进行查找,如果有此元素,则输出散列地址,如果无此元素,则输出not found。并输出查找次数(输入个数不会超过15个) 输入格式: 第一行为输入个数; 第二行为对应的输入值,用空格隔开; 第三行为需查找的元素,第1个为查找元素个数,后面为查找元素 输出格式: 第一行输出输入序列的散列地址,以一个空格
数据结构☞散列表
散列表(Hash Table) 散列表的英文叫“Hash Table”,我们平时也叫它“哈希表”或者“Hash 表”。 散列表用的是数组支持按照下标随机访问数据的特性,所以散列表其实就是数组的一种扩展,由数组演化而来。可以说,如果没有数组,就没有散列表。 key:键或者关键字。 散列函数(或“Hash 函数”“哈希函数”):把key值转化为数组下标的映射方法。 散列函数计算得到的值就叫作散列值(或“Hash 值”“哈希值”)。 散列函数 散列函数设计的基本要求: 散列函数计算得到的散列值是一个非负整
算法设计与分析——散列表/哈希表(Hash Table)(三):散列表原理
直接寻址技术的缺点是非常明显的:如果全域U很大,则在一台标准的计算机可用内存容量中,要存储大小为∣U∣|U|∣U∣的一张表TTT也许不太实际,甚至是不可能的。还有,实际存储的关键字集合KKK相对UUU来说可能很小,使得分配给TTT的大部分空间都将浪费掉。 当存储在字典中的关键字集合KKK比所有可能的关键字的全域UUU要小许多时,散列表需要的存储空间要比直接寻址表少得多。特别地,我们能将散列表的存储需求降至Θ(∣K∣)\Theta(|K|)Θ(∣K∣),同时散列表中查找一个元素的优势仍得到保持,只需要O(1)
构造散列表 (20 分)
设散列表a[18],散列函数是hask(k)=k%17,用开放地址法解决冲突hi=(h0+di)%m。冲突时,使用增量序列di=5i。计算输入序列(值>=0)对应的散列地址值。(输入个数不会超过15个) 输入格式: 第一行为输入个数; 第二行为对应的输入值,用空格隔开。 输出格式: 每行对应一个值及其散列地址,中间用空格隔开(即pos前后均有一个空格) 输入样例: 5 141 73 95 112 56 结尾无空行 输出样例: 141 pos: 5 73 pos: 10 95 p
非技术类
1,649
社区成员
58,980
社区内容
发帖
与我相关
我的任务
非技术类
VC/MFC 非技术类
复制链接
扫一扫
分享
社区描述
VC/MFC 非技术类
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章