java - 为什么哈希表中有这么多空引用-LMLPHP

我试图调试Hashtable的内容,并且很好奇为什么有太多的Null引用init。

最佳答案

这就是哈希表的工作方式。 For reference


  在计算中,哈希表(哈希表)是一种数据结构,
  实现关联数组抽象数据类型,该结构可以
  可以将键映射到值。哈希表使用哈希函数来计算
  存储桶或插槽数组的索引,从中可以
  可以找到价值。


通常,存储桶多于值,这就是为什么某些存储桶为空的原因。

这对于哈希表的性能很重要。


  哈希表的关键统计数据是负载因子,定义为
  
  load_factor = n / k
  
  其中,n是哈希表中占用的条目数。 k是数字
  桶。随着负载因子的增大,哈希表变为
  速度较慢,甚至可能无法工作(取决于所使用的方法)。
  哈希表的预期恒定时间属性假定
  负载系数保持在一定范围以下。对于固定数量的桶,
  查找时间随着条目数量的增加而增加,因此
  无法达到所需的恒定时间。

09-10 06:31
查看更多