Имея массив:
$array = (..., 'name' => 'foo', 'age' => 69, 'address' => 'bar');
Я буду использовать операцию:
if(isset($array['address'])) { //Do something... }
Разве большая буква O будет O (n)? Как isset () работает за кулисами?
Как заявил Марк Бейкер, это O (1). Однако учтите, что это только в среднем случае.
На самом деле, операция поиска в хэш-картах все еще может занимать O (n) времени из-за коллизий хеш-функций, независимо от того, насколько хорошо вы реализуете хэш-карту (цепочку, зондирование и т. Д.).
Тем не менее, это не означает, что хеш-таблицы плохие на практике. На самом деле, Big O — это просто то, что часто используется для описания наихудшего сценария алгоритма.
Других решений пока нет …