Java 使用hashmap的空间复杂度。应该考虑密钥大小吗?
在java中,我们通常认为使用哈希表的空间复杂度是O(n)。我们是否也应该考虑密钥大小,如果密钥非常大呢 这取决于键的大小和存储在哈希表(即Java 使用hashmap的空间复杂度。应该考虑密钥大小吗?,java,hash,Java,Hash,在java中,我们通常认为使用哈希表的空间复杂度是O(n)。我们是否也应该考虑密钥大小,如果密钥非常大呢 这取决于键的大小和存储在哈希表(即n)中的元素数之间的关系。如果密钥的大小是 n>代码>的函数,则在计算空间复杂度时,必须考虑密钥的大小。哈希表的值也是如此 但是,我认为,在大多数情况下,可以安全地假设键的大小(无论有多大)是一个常量,而不是一个取决于键的大小和哈希表中存储的元素数(即n)之间关系的n。如果密钥的大小是 n>代码>的函数,则在计算空间复杂度时,必须考虑密钥的大小。哈希表的值也
n
)中的元素数之间的关系。如果密钥的大小是<代码> n>代码>的函数,则在计算空间复杂度时,必须考虑密钥的大小。哈希表的值也是如此
但是,我认为,在大多数情况下,可以安全地假设键的大小(无论有多大)是一个常量,而不是一个取决于键的大小和哈希表中存储的元素数(即
n
)之间关系的n。如果密钥的大小是<代码> n>代码>的函数,则在计算空间复杂度时,必须考虑密钥的大小。哈希表的值也是如此
但是,我认为,在大多数情况下,可以安全地假设键的大小(无论多大)是一个常量,而不是n
的函数