社区
C++ 语言
帖子详情
c++中的hash_map 问题
ld5128702
2014-09-22 11:50:36
现在程序用到c++的hash_map结构,key现在用的是string,这样是没什么问题,但是,100m的文件,差不多能占300M的内存,差距太大了。就将key改成了const char*,这样内存是差不多了。可是在入数据的时候,发现数据丢失了。入了16w,结果.size了一下,才14w。我想知道这是为什么,以及怎么解决?当然,其他能解决内存问题的存入方法也可以。
...全文
147
6
打赏
收藏
c++中的hash_map 问题
现在程序用到c++的hash_map结构,key现在用的是string,这样是没什么问题,但是,100m的文件,差不多能占300M的内存,差距太大了。就将key改成了const char*,这样内存是差不多了。可是在入数据的时候,发现数据丢失了。入了16w,结果.size了一下,才14w。我想知道这是为什么,以及怎么解决?当然,其他能解决内存问题的存入方法也可以。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ld5128702
2014-09-28
打赏
举报
回复
确实是内存的问题,已经解决了。谢谢大家了
熊熊大叔
2014-09-23
打赏
举报
回复
key用char *, 那么实际的字符串map是不会保存的,需要你自己分配空间管理,也不会被计算到.size里去。
nice_cxf
2014-09-23
打赏
举报
回复
key用char*,要自己写比较函数
没事人
2014-09-23
打赏
举报
回复
我觉得是一个概念问题,
勤奋的小游侠
2014-09-23
打赏
举报
回复
你的char*指向那里?别有有些内存释放了吧?重复分配的内存地址可能是相同的。上代码吧
ri_aje
2014-09-23
打赏
举报
回复
上代码。怀疑是内存管理的问题。
C++
哈希表使用的好文章-
Hash
_
Map
hash
_
map
基于
hash
table(哈希表)。 哈希表最大的优点,就是把数据的存储和查找消耗的时间大大降低,几乎可以看成是常数时间;而代价仅仅是消耗比较多的内存。然而在当前可利用内存越来越多的情况下,用空间换时间...
c++
中
的
hash
_
map
c++
中
的
hash
_
map
hash
相关哈希函数哈希表
c++
中
的
hash
_
map
最近刷左神算法,
hash
_
map
经常被用到(
hash
_
map
的增删改查时间复杂度都能低至O(1))。但是左神用的都是java
中
的
hash
_
map
,苦于这个原因,只能自己研究一下
C++
中
...
c++
实战区块链核心密码学-基于openssl公开课
课程偏工程应用,具体的AES,椭圆曲线、RSA等算法只通过图示讲原理,一些简单
hash
算法会读一些源码,并不去实现,课程
中
会单独实现简洁的XOR对称加密和base16算法(代码量不大易懂)。其他的应用我们都基于OpenSSL...
c++
中
hash
_
map
的使用
概念:
hash
_
map
是用来存储key-value键值对的集合,每一个键值对是一个Entry,这些Entry分散存储在一个数组
中
; 核心技术:直接存址和解决冲突 存储结构:分散的桶结构,每个桶节点
中
同时可以存放一个...
C++
中
有
hash
_
map
吗?
hash
_
map
和unordered_
map
更详细的解释:
C++
STL
中
map
的底层实现和使用 这恰好能满足我们需要对数据进行排序的应用需求,而且足够高效,其查询操作的复杂度是 O(logN) 。但有时候我们可能不需要对数据进行排序,而仅仅是通过key能“快速”...
C++ 语言
64,637
社区成员
250,559
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章