Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про PHP: time, complexity

Какая временная сложность у операций: вставка, удаление, поиск по ключу, итерация массива?

Этот вопрос проверяет знание алгоритмической сложности и понимание реального поведения PHP-массивов.

Короткий ответ

Вставка и поиск по ключу в PHP-массиве выполняются за константное время в среднем. Удаление также работает быстро. Итерация всегда линейная. В худших случаях сложность может ухудшаться, но на практике это редкость.

Длинный ответ

Так как PHP-массивы реализованы как хеш-таблицы, их операции имеют предсказуемую сложность.

Сложность основных операций

Перед разбором важно понимать, что речь идёт о средней сложности.

Вставка элемента

  • Средняя сложность: O(1)

  • Возможна перераспределение памяти при росте массива

$array['key'] = 'value';

Поиск по ключу

  • Средняя сложность: O(1)

  • Основан на хешировании ключа

$value = $array['key'];

Удаление элемента

  • Средняя сложность: O(1)

  • Элемент помечается как удалённый

unset($array['key']);

Итерация массива

  • Всегда O(n)

  • Нужно пройтись по всем элементам

foreach ($array as $value) {
    // обработка
}

Худшие случаи

  • Коллизии хешей

  • Перестройка таблицы при росте массива

На практике PHP хорошо оптимизирует эти сценарии.

Краткий вывод

PHP-массивы быстры для доступа по ключу, но любая полная обработка массива линейна. Это важно учитывать при работе с большими объемами данных.

  • Аватар

    PHP Guru

    Mikhail Savin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    4

  • Сложность:

    7

Навыки

  • PHP

    PHP

Ключевые слова

#time

#complexity

Подпишись на PHP Developer в телеграм

  • Аватар

    PHP Guru

    Mikhail Savin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.