Курс Python → Структура данных deque в Python

Класс collections.deque() в Python представляет собой удобную структуру данных, объединяющую в себе возможности как стека, так и очереди. Он представляет собой двустороннюю очередь, позволяющую добавлять и извлекать элементы как с начала, так и с конца последовательности. Это делает его особенно удобным для решения задач, требующих работы с данными в порядке их поступления или обработки.

Одним из главных преимуществ deque() является его эффективность. Операции добавления и извлечения элементов в deque() выполняются за константное время O(1) в любом направлении. Это означает, что даже при большом количестве элементов в очереди время выполнения операций остается почти неизменным, что делает deque() отличным выбором для задач, где производительность имеет значение.

Пример использования deque() в Python:


from collections import deque

# Создаем пустую двустороннюю очередь
queue = deque()

# Добавляем элементы в начало и конец очереди
queue.appendleft(1)
queue.append(2)

# Извлекаем элементы с начала и конца очереди
print(queue.popleft())  # Вывод: 1
print(queue.pop())      # Вывод: 2

В данном примере мы создаем пустую двустороннюю очередь, добавляем элементы в начало и конец очереди с помощью методов appendleft() и append(), а затем извлекаем элементы из очереди с помощью методов popleft() и pop(). Это лишь один из множества способов использования deque() для решения различных задач в Python.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Работа с изменяемыми коллекциями
  2. Обработка ошибок в Python
  3. Просмотр атрибутов и методов класса
  4. Извлечение чисел из текста
  5. Реверс строки и списка в Python.
  6. Оператор «not» в Python
  7. Создание новых функций с помощью functools.partial
  8. Передача параметров в Python
  9. Метод rpow в Python
  10. Асинхронное программирование с asyncio
  11. Python reversed() функция
  12. Оператор is в Python
  13. Преобразование данных в Python
  14. Различия символов в Python
  15. Передача аргументов в Python
  16. Возврат нескольких значений
  17. Руководство по библиотеке pydantic
  18. Оператор @ для умножения матриц
  19. Удаление дубликатов с помощью множеств
  20. Подсчет элементов в Python
  21. Удаление дубликатов из списка с помощью dict.fromkeys
  22. Проверка типа объекта в Python
  23. Создание вкладок с TKinter
  24. Python OrderedDict и fromkeys() — работа с словарями
  25. Удаление элемента по индексу в Python
  26. Улучшение читаемости кода в Python
  27. Модуль itertools: эффективная работа с итераторами
  28. Удаление элементов из списка
  29. Оптимизация гиперпараметров в Python
  30. Сортировка с параметром key
  31. Работа с набором данных CIFAR10 в PyTorch
  32. Получение списка кортежей из словаря
  33. Операции с массивами в NumPy
  34. Метод get для словаря
  35. Преобразование чисел в восьмеричную строку
  36. Изменения в обработке логических значений
  37. Расширение операции побитового «и» в Python
  38. Работа с комплексными числами
  39. Поиск самого длинного слова в списке с использованием max()
  40. Работа с географическими данными.
  41. Модуль Operator в Python
  42. Установка Home Assistant
  43. Нахождение разницы между списками в Python
  44. Проблема с изменяемыми аргументами
  45. Повторение и перенос строки

Marketello читают маркетологи из крутых компаний