【问题标题】:For a hash table, how does one conclude that n=O(m), where n is the number of elements in the table and m is the number of slots?对于哈希表,如何得出 n=O(m) 的结论,其中 n 是表中的元素数,m 是槽数?
【发布时间】:2016-01-25 02:09:50
【问题描述】:

在 CLRS 的第 260 页上,它说,

如果哈希表槽的数量至少与表中元素的数量成正比,我们有 n = O(m),因此,a = n/m = O(m)/m = O (1)。因此,搜索平均需要固定的时间。

如何得出 n = O(m) 的结论? n(表中元素的总数)如何被 m(槽数)限制?不应该是 m = O(n) 吗?

【问题讨论】:

  • 您可以从重新审视 O(m) 的含义开始。
  • 哦。没关系。我以某种方式将 n = O(m) 读作“n 的最坏情况”。谢谢@ScottHunter!

标签: algorithm hash hashtable complexity-theory clrs


【解决方案1】:

O(m)指的是槽数的最坏情况限制,即n,哈希表中的项目数。直接地址表就是一个例子。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-21
    • 2019-06-17
    • 1970-01-01
    • 1970-01-01
    • 2019-08-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多