社区
数据结构与算法
帖子详情
内存优化问题2
amdgaming
2013-08-20 11:24:31
我有一个hashmap
key是从key1到key200000,不连续
而每一个key对应的value一个是10万到100万的中随机的30个数字,不重复,
比如这样:
key1:数组[10万,20万....300万]
key2:数组[20万,40万,33万零100 共30个数字]
前提是我现在要查询是通过key来找那个数组
现在的vaule应该是重复存储,有没有办法不怎么降低查询速度的情况下
降低存储需要的空间,请各位支招,谢谢!
...全文
344
4
打赏
收藏
内存优化问题2
我有一个hashmap key是从key1到key200000,不连续 而每一个key对应的value一个是10万到100万的中随机的30个数字,不重复, 比如这样: key1:数组[10万,20万....300万] key2:数组[20万,40万,33万零100 共30个数字] 前提是我现在要查询是通过key来找那个数组 现在的vaule应该是重复存储,有没有办法不怎么降低查询速度的情况下 降低存储需要的空间,请各位支招,谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hua_zhixing_
2013-09-12
打赏
举报
回复
你的hashmap存储的个数可能达到600W,而value用到的个数只有不到100W,所以要降低存储,我觉得就是如何去重的问题。可以尝试把value作为key,key作为value来重新hash。如果反过来hash产生的重复数据比你现在的重复数据还多,那此方法就不可取了。
happytengfei
2013-08-21
打赏
举报
回复
嗯。有点难度,首先你内存的花销为: key number * 30 * sizeof(each value in array)。所以一个有效的办法是观察一下所有的key是不是有规律的,如果有的话,合理的合并key的value。这样使得key number下降。也可以从另外一个方向考虑减少内存,就是对所有的key进行排序,编号。然后将200000*30的数据存到文件里,当输入key值时,将文件中相应的块load到内存里。
FancyMouse
2013-08-20
打赏
举报
回复
30个数拉出去。key2数组存储30个数中的index。1字节就够了。
amdgaming
2013-08-20
打赏
举报
回复
有没有办法不怎么降低查询速度的情况下 降低一点点可以接受
C++性能
优化
技术
2. **循环
优化
**:循环是计算密集型代码中最常见的一部分。在编写循环时,应尽量减少循环中的计算量,避免在循环中进行函数调用,尤其是虚函数调用。循环展开(Loop Unrolling)是一种常见的技术,可以减少循环开销...
查看
内存
使用情况的汇编源代码
在深入探讨IT领域时,汇编语言...通过深入理解这些细节,开发者可以更好地掌握如何在不同的操作系统环境下高效地监控和
优化
内存
使用。在实际应用中,这种技术在系统分析、性能测试和安全审计等领域具有广泛的应用价值。
Android中获取系统
内存
信息以及进程信息
在实际开发中,这些信息可以用于性能监控、
内存
优化
或者用户界面的反馈。例如,当系统
内存
不足时,可以通知用户关闭一些后台应用以释放
内存
;或者根据运行的进程和服务来分析应用的资源消耗。 总的来说,`...
SciTech.NET.Memory.Profiler.v4.0.114.安装_注册机
4.
内存
优化
:根据Profiler提供的分析结果,可以采取措施释放不再使用的对象,或者调整
内存
分配策略,
优化
代码以减少
内存
占用。 五、
内存
优化
技巧 1. 使用弱引用:对于那些只希望临时保存,但又不希望阻止垃圾回收...
visualvm 中文版
2. **
内存
泄漏检测**:
内存
泄漏是许多应用程序中的常见
问题
,可能导致系统资源耗尽。VisualVM提供了
内存
分析工具,可以跟踪对象的生命周期,帮助开发者发现并定位可能导致
内存
泄漏的代码片段。 3. **垃圾回收器...
数据结构与算法
33,028
社区成员
35,337
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章