Курс 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. Блок try-except-else
  2. Оператор += в Python
  3. Разделение строк в Python
  4. Работа с collections в Python.
  5. Игра Виселица на Python
  6. Переопределение оператора % для объектов
  7. Хэш-функции в Python
  8. Подчеркивание в REPL
  9. Работа с итераторами в Python
  10. Flask — веб-фреймворк Python
  11. Создание таблиц в Python с PrettyTable
  12. Подсчет частотности элементов в Python
  13. Преобразование генераторов в циклы
  14. Создание Telegram-бота на Python
  15. Проверка класса объекта
  16. Проверка на истинность объектов в Python
  17. Реализация операции -= для пользовательского класса
  18. %pinfo: получение информации об объекте
  19. Избегание циклических зависимостей классов в Python
  20. Определение функций с необязательными аргументами
  21. Фильтрация последовательности
  22. Перебор элементов списка в Python
  23. Кортежи в Python: особенности и преимущества
  24. Работа с необработанными строками
  25. Обработка аргументов Python
  26. Удаление дубликатов в pandas
  27. Замена переменных в Python
  28. Автоматизация с Python
  29. Форматирование даты с strftime()
  30. List Comprehension Tutorial
  31. Функции в одну строку
  32. Логирование в Python
  33. Создание и удаление объектов
  34. Подсчет частоты элементов с Counter
  35. Протокол управления контекстом
  36. Основы работы со строками в Python
  37. Получение текущей даты в Python
  38. Избегайте использования goto
  39. Преобразование данных в Python
  40. Работа с географическими данными в Python
  41. Упрощенный вывод данных в Python
  42. Создание детектора плагиата
  43. Частичное совпадение ввода
  44. Генераторы списков
  45. Конкатенация строк в Python
  46. Повторение элементов в Python
  47. Метод setdefault() в Python
  48. Разделение строк методом split()

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