Курс 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. Проверка подстроки в строке с помощью in
  3. Анонимные функции в Python
  4. Поиск HTML-элементов с BeautifulSoup
  5. Изменение списка срезом
  6. Генераторы данных
  7. Работа с часовыми поясами в Python.
  8. Форматирование строк в Python
  9. Проверка типа объекта в Python
  10. Создание словарей и множеств в Python.
  11. Получение имени функции с помощью inspect
  12. Создание спинбокса в tkinter
  13. TON Smart Challenge #2: участие и подготовка
  14. Удаление элемента из списка в Python
  15. Обработка исключений
  16. Lambda Functions in Python
  17. Тестирование времени с Freezegun
  18. Метод join() для объединения строк
  19. Названия переменных
  20. Инициализация объекта
  21. Разработка Telegram-ботов
  22. Поиск повторов в списке
  23. Переопределение метода __eq__
  24. Использование type hints
  25. Combobox в Tkinter
  26. Переопределение метода __floordiv__
  27. Регистрация на курсы SF Education
  28. Создание словарей с defaultdict()
  29. Работа с географическими данными в Python
  30. Использование обратной косой черты в f-строках
  31. Расчет времени выполнения
  32. Оптимизация памяти в Python
  33. Отступы в Python
  34. Генерация строк с .join()
  35. Python Метод Union Множеств
  36. Транспонирование 2D-массива с помощью zip
  37. Работа с датой и временем в Python
  38. Фильтрация последовательности
  39. Функция product() в Python
  40. Дефолтные параметры в Python
  41. Сохранение Unicode в JSON
  42. Создание namedtuple списком полей
  43. Итераторы в Python
  44. Подсчет частотности элементов в Python
  45. Блок else в Python

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