Sobes.tech
Back to questions
Junior — Middle
88

Можете объяснить, что подразумевается под структурой данных бинарная куча?

Answer from AI

sobes.tech AI

Бинарная куча (binary heap) — это структура данных, которая представляет собой полное бинарное дерево, удовлетворяющее свойству кучи:

  • Для мин-кучи: значение в каждом узле меньше или равно значениям его потомков.
  • Для макс-кучи: значение в каждом узле больше или равно значениям его потомков.

Основные свойства:

  • Полное бинарное дерево: все уровни заполнены полностью, кроме, возможно, последнего, который заполняется слева направо.
  • Быстрая вставка и удаление минимального (или максимального) элемента за O(log n).

Применение:

  • Реализация приоритетных очередей.
  • Алгоритмы сортировки (heapsort).

Пример: мин-куча с элементами [2, 3, 5, 7, 8, 10]

       2
      / \
     3   5
    / \  /
   7  8 10

Вставка и удаление элементов поддерживают структуру и свойство кучи с помощью операций "просеивания" вверх или вниз.