Курс 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. Работа с изображениями PIL
  2. Операции со строками в Python
  3. Работа с CSV файлами
  4. Форматирование объектов с модулем pprint
  5. Функция reduce() в Python
  6. Основы Python
  7. Идентификатор объекта в Python
  8. Обработка исключений в Python
  9. Выключение компьютера с помощью Python
  10. Генераторы списков в Python
  11. Встраивание HTML в Jupyter Notebook
  12. Использование метода lower()
  13. Использование функции enumerate()
  14. Объединение Python и Shell
  15. Возврат нескольких значений
  16. globals и locals
  17. Подсчет частотности элементов в Python
  18. Работа с JSON данными в Python
  19. Замена символов в строке
  20. Создание обратного итератора
  21. Нахождение разницы между списками в Python
  22. Поиск email
  23. Преобразование числа в список цифр
  24. Функция enumerate в Python
  25. Функции с необязательными аргументами
  26. Метод count() для списков
  27. Библиотека sh: использование команд bash в Python
  28. Библиотека Chartify: руководство
  29. Управление доступом к модулю
  30. Оператор объединения словарей
  31. Изменение списка срезами
  32. Хешируемые ключи в Python
  33. Получение частей дроби
  34. Оператор Walrus в Python 3.8
  35. Основы работы с os
  36. Декораторы в Python
  37. Mad Libs Generator
  38. Работа с файлами в Python
  39. Объединение итераторов
  40. Метод lt для сортировки объектов
  41. Визуализация пропусков данных
  42. Использование подчеркивания в REPL
  43. Работа с срезами в Python
  44. Тестирование времени с Freezegun
  45. Модуль Operator в Python
  46. Генерация чисел с range()
  47. Очистка строки в Python

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