Курс Python → Создание класса очереди

Очередь — это структура данных, которая работает по принципу «первым пришел, первым вышел» (FIFO). В ней элементы добавляются в конец очереди, а извлекаются из начала. Этот проект на Python предлагает создать новый класс для реализации очереди. Для начала необходимо определить методы для добавления элемента в очередь (enqueue) и извлечения элемента из очереди (dequeue).

Пример кода для создания класса очереди:


class Queue:
    def __init__(self):
        self.items = []

    def enqueue(self, item):
        self.items.append(item)

    def dequeue(self):
        if not self.is_empty():
            return self.items.pop(0)

    def is_empty(self):
        return len(self.items) == 0

После того, как класс очереди создан, можно протестировать его работу. Создайте экземпляр класса, добавьте несколько элементов в очередь с помощью метода enqueue, а затем извлеките их с помощью метода dequeue. Таким образом, можно убедиться, что структура данных работает корректно и возвращает элементы в правильном порядке.

Пример тестирования работы очереди:


q = Queue()
q.enqueue(1)
q.enqueue(2)
q.enqueue(3)

print(q.dequeue())  # Выведет: 1
print(q.dequeue())  # Выведет: 2

Использование очереди в других проектах может быть полезным, когда необходимо управлять порядком обработки элементов. Например, при реализации алгоритмов поиска в ширину (BFS) или обработке задач в многопоточном приложении. Практика с объектно-ориентированным программированием на примере создания класса очереди поможет вам лучше понять принципы работы структур данных и их применение в реальных проектах.

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

Автор урока

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

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

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

  1. Декораторы для регистрации функций
  2. Установка пакета в Python
  3. Применение функции к каждому элементу списка
  4. Проверка типа объекта в Python
  5. Округление в Python
  6. Создание словарей в Python
  7. Работа с массивами в Python
  8. Объединение строк с помощью метода join
  9. Генераторы по генератору
  10. Однострочники Python
  11. Разница между датами
  12. Работа с контекстным менеджером Pool
  13. Оператор «is not» в Python
  14. Получение текущего времени в Python
  15. Извлечение статей с newspaper3k
  16. Тестирование с unittest
  17. Модуль functools в Python
  18. Отладчик pdb: начало работы
  19. Создание Radio кнопок в tkinter
  20. Красивый вывод списка
  21. Переопределение метода __eq__
  22. Работа с кортежами в Python
  23. Декораторы в Python
  24. Проверка версии Python
  25. Метод join() для объединения строк
  26. Регистрация на хакатоне
  27. Вывод с переменной через запятую
  28. Вычисление логарифмов в Python
  29. Построение графиков в Matplotlib
  30. Сохранение Unicode в JSON
  31. Работа с файлами в Python
  32. Округление дробей в Python
  33. Метод split() для разделения строк
  34. Работа с итераторами в Python
  35. Преобразование регистра строк
  36. Combobox в Tkinter
  37. Изменения в обработке логических значений
  38. Декораторы с аргументами в Python
  39. Работа с файлами в Python
  40. Переменная с нижним подчеркиванием
  41. Генератор списка в Python
  42. Встраивание HTML в Jupyter Notebook
  43. Декораторы в Python
  44. Функция print() — вывод информации

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