社区
Linux/Unix社区
帖子详情
C言语哈希表(uthash),可以存在两个key值一样的值吗?
xinyao55
2013-09-13 09:40:24
我在uthash里面记录了一个struct,可以存在key值相同,其它值不同的struct吗?
...全文
907
6
打赏
收藏
C言语哈希表(uthash),可以存在两个key值一样的值吗?
我在uthash里面记录了一个struct,可以存在key值相同,其它值不同的struct吗?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
qq120848369
2013-09-15
打赏
举报
回复
可以的,但你要保证哈希桶内有序,否则就没意义了。
赵磊
2013-09-14
打赏
举报
回复
uthash 没太玩过,但是肯定地说,所有hash算法,都有key相同,内容不同的情况。
Carl_CCC
2013-09-14
打赏
举报
回复
你可以开辟一个特别区,碰撞了的都放那了,也可以二次哈希。或者放下一个格子,算法很多。
亚巴顿
2013-09-14
打赏
举报
回复
你可以这么做,只是不推荐。
xinyao55
2013-09-13
打赏
举报
回复
引用 楼主 u012102058 的回复:
我在uthash里面记录了一个struct,可以存在key值相同,其它值不同的struct吗?
什么算法啊,说清楚点啊,
Carl_CCC
2013-09-13
打赏
举报
回复
可以啊,所以要有处理出现这种情况的算法。
C语言小知识——
ut
hash
使用
文章目录一、
ut
hash
是什么?二、基本
hash
用法1.添加头文件2.创建键-
值
对结构3.查找元素
HASH
_FIND_INT4.插入元素
HASH
_ADD_INT5.统计元素个数
HASH
_COUNT6.循环表中元素
HASH
_ITER总结 一、
ut
hash
是什么? 在使用python时我们常常会使用字典来进行数据检索,这个字典实际就是
哈希表
,通过
key
值
来进行唯一检索。 那么,在C语言中,我们应该如何实现
哈希表
呢?当
哈希表
中元素比较简单时,我们可以直接构造一个数组,把下标看作
key
值
,value
值
就是
C
言语
哈希表
(
ut
hash
)简介
一、
哈希表
的概念及作用 在一般的线性表或者树中,我们所储存的
值
写它的存储位置的关系是随机的。因此,在查找过程中,需要一系列的与关键字的比较。算法的时间复杂度与比较的次数有关。线性表查找的时间复杂度为O(n)而平衡二叉树的查找的时间复杂度为O(log(n))。无论是采用线程表或是树进行存储,都面临面随着数据量的增大,查找速度将不同程度变慢的问题。而
哈希表
正好解决了这个问题。它的主要思想是通过将
值
与其存储位置相关联,来实现快速的随机存储。 关于
哈希表
的详细说明,可以参考以下链接: http:...
C语言
哈希表
ut
hash
的使用方法详解(附下载链接)
工科生一枚,热衷于底层技术开发,有强烈的好奇心,感兴趣内容包括单片机,嵌入式Linux,Uboot等,欢迎学习交流! 爱好跑步,打篮球,睡觉。 欢迎加我QQ1500836631(备注CSDN),一起学习交流问题,分享各种学习资料,电子书籍,学习视频等。
ut
hash
简介 由于C语言本身不
存在
哈希,但是当需要使用
哈希表
的时候自己构建哈希会异常复杂。因此,我们可以调用开源的第三方头文件,这只是一个头文件:
ut
hash
.h。我们需要做的就是将头文件复制到您的项目中,然后:#include “
ut
hash
..
c语言开源库之
ut
hash
用法
c语言开源库之
ut
hash
用法、以及注意事项
Linux/Unix社区
23,224
社区成员
74,536
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章