PYTHON СТРУКТУРА ДАННЫХ КУЧА
Куча (Heap) - это структура данных, которая позволяет хранить набор элементов таким образом, чтобы каждый элемент имел доступ к самому "минимальному" или "максимальному" значению в наборе. В Python для работы с кучей используется модуль heapq.
Для создания кучи необходимо преобразовать список элементов с помощью функции heapq.heapify(). Для добавления элемента используется функция heapq.heappush(), а для получения элемента с минимальным значением - функция heapq.heappop():
import heapq
h = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
heapq.heapify(h)
heapq.heappush(h, 0)
print(heapq.heappop(h)) # 0
Кроме того, heapq поддерживает ряд дополнительных функций, позволяющих работать с кучами более гибко:
- heapq.nlargest(n, iterable[, key]) - возвращает n наибольших элементов из iterable
- heapq.nsmallest(n, iterable[, key]) - возвращает n наименьших элементов из iterable
- heapq.heappushpop(heap, item) - добавляет элемент item в кучу и возвращает наименьший элемент кучи
- heapq.heapreplace(heap, item) - извлекает наименьший элемент кучи и добавляет элемент item в кучу
Использование кучи может значительно ускорить решение некоторых задач, например, поиска k-го наименьшего/наибольшего элемента в списке.
Собеседование на Backend в Лондон за $12.000 в Месяц
Информатика. Структуры данных: Куча (heap). Центр онлайн-обучения «Фоксфорд»
Алгоритмы и структуры данных. 10. Сортировка кучей
СТРУКТУРЫ — ТВОЯ ГЛАВНАЯ ОШИБКА
Структура данных Stack( LIFO). Задача \
10 Советов новичкам программистам
Новые материалы:
- Excel в словарь python
- Python vk api переслать сообщение
- Numpy как найти индекс элемента
- Django методы queryset
- Не активируется виртуальное окружение python
- Гребневая регрессия python
- Ball python перевод
- Произведение элементов массива numpy
- Пересечение словарей python
- Как пользоваться youtube api python
- Python трехмерный список