作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个位集,我用它来跟踪一个项目是否存在的例子
b = 01100110000
它表示第 2 项和第 3 项存在,第 1 项和第 4 项不存在。
在搜索可以优化此位集数组的库时。我遇到了Roaring bitmaps这听起来非常令人兴奋。
我用它做了一个快速测试,
public static void main(String[] args) throws IOException {
RoaringBitmap roaringBitMap = new RoaringBitmap();
BitSet bitSet = new BitSet(5000);
double prob = 0.001;
Random random = new Random();
for (int i = 0; i < 5000; i++) {
if (random.nextDouble() < prob) {
bitSet.set(i);
roaringBitMap.add(i);
}
}
System.out.println(bitSet.cardinality());
System.out.println("bitset bytes: "+ bitSet.size());
System.out.println("RoaringBitmap bytes: " + roaringBitMap.getSizeInBytes() * 8);
}
基本上我们正在设置一些值并检查数据结构的整体大小。
当我们使用多个概率值运行它时。我得到了
如果您看到随着我们插入越来越多的数字,RoaringBitmap 的内存占用量会增加。
最佳答案
当条目数量较少时似乎是这种情况,但是当我们增加条目数量时,差异变得不那么明显了。虽然没有得到 lib 作者的确认(我问了 here 并跟进了 here )
看着这个,似乎随着条目数量的增加,他们可能只在幕后使用位图。重要的是不要盲目使用该库,针对您的用例进行测试。
关于java - 咆哮位图使用比普通位集更多的存储空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72786976/
我正在使用 kartik growl,我想通过 ajax success 显示 growl 我试过了 这是javascript代码: $.post({ url: "forwardpr", // y
我有以下代码(缩短以留下要点): class Strange(): def setter(self, val): self._val = val val = prop
我是一名优秀的程序员,十分优秀!