isset操作的大O符号

时间:2015-03-08 13:44:19

标签: php big-o

有一个数组:

$array = (..., 'name' => 'foo', 'age' => 69, 'address' => 'bar');

我将使用该操作:

if(isset($array['address'])) { //Do something... }

大O符号是O(n)吗? isset()如何在幕后工作?

1 个答案:

答案 0 :(得分:1)

如Mark Ba​​ker所述,这是O(1)。但请注意,这只是一般情况。

事实上,无论你如何实现哈希映射(链接,探测等),哈希映射中的搜索操作仍然可能由于哈希冲突而花费O(n)时间。

尽管如此,这并不意味着哈希表在实践中很糟糕。实际上,Big O只是通常用于描述算法的最坏情况的东西。