Курс 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. Работа с многоуровневыми словарями в Python
  2. Получение атрибутов и методов класса
  3. Метод ifloordiv для пользовательских классов
  4. Глубокое копирование объектов
  5. Управление ресурсами с контекстными менеджерами
  6. Генерация чисел с range()
  7. Вакансии в Nebius
  8. Рекурсия для обращения строки
  9. Декодирование строк в Python
  10. Проверка условий в Python
  11. Замыкания в Python
  12. Форматирование объектов с модулем pprint
  13. Генераторы в Python
  14. Создание и операции с дробями
  15. Сортировка элементов с OrderedDict
  16. SciPy: широкий функционал для математических операций
  17. Использование обратной косой черты в f-строках
  18. Установка и использование Logzero
  19. Применение команды break
  20. Основы работы со списками
  21. Просмотр внешних файлов в %pycat
  22. Генерация случайных чисел в Python
  23. Методы shutil для работы с файлами
  24. Методы сравнения множеств
  25. Преобразование в float
  26. Управление доступом к модулю
  27. Работа с файлами в Python
  28. Реализация операции -= для пользовательского класса
  29. Структурирование именованных констант
  30. Печать списка с помощью метода join
  31. Python и Юникод: работа с цифрами
  32. Метод Event.wait() в Python
  33. Переопределение метода __or__()
  34. Регистрация на курсы SF Education
  35. Нахождение разницы между списками в Python
  36. Фильтрация списков с itertools
  37. Проверка версии Python
  38. Названия столбцов в Python таблицах
  39. Работа с набором данных CIFAR10 в PyTorch
  40. Оператор walrus в Python
  41. Генераторы в Python
  42. Функции map, filter и reduce
  43. Проблема с изменяемыми аргументами
  44. Метод count() для списка
  45. Основные операции с библиотекой Numpy
  46. Декораторы в Python
  47. Отладка кода

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