Перейти к основному содержанию
EDU-MMCS
  • В начало
  • Дополнительно
Вы используете гостевой доступ
Вход
В начало
  1. Prog_2_4
  2. Лабораторная работа 11. Структуры данных

Лабораторная работа 11. Структуры данных

Требуемые условия завершения
Открыто с: вторник, 8 апреля 2025, 00:00
Срок сдачи: вторник, 15 апреля 2025, 00:00

1. Реализуйте структуру Stack с методами:

  1. push(value) — добавить элемент в стек.

  2. pop() — удалить и вернуть верхний элемент.

  3. peek() — вернуть верхний элемент без удаления.

  4. is_empty() — проверить, пуст ли стек.

  • Можно использовать список (list) как внутреннее хранилище.

  • В методе push — используйте append.

  • В методе pop — используйте pop(), но сначала проверьте, не пуст ли стек.

  • Метод peek возвращает последний элемент, но не удаляет его: self.stack[-1].

Не забудьте обработать ситуации, когда пытаются извлечь из пустого стека.

2. Реализуйте класс Queue с методами:

  1. enqueue(value) — добавить элемент в конец очереди.

  2. dequeue() — удалить и вернуть элемент из начала очереди.

  3. peek() — просмотреть первый элемент.

  4. is_empty() — проверить, пуста ли очередь.

  • Используйте список (list) как внутреннее хранилище.

  • Добавление (enqueue) — через append.

          Удаление (dequeue) — через pop(0).

3. Реализуйте структуру Deque (Double-Ended Queue), поддерживающую операции:

  1. add_front(value) — добавить в начало.

  2. add_rear(value) — добавить в конец.

  3. remove_front() — удалить из начала.

  4. remove_rear() — удалить из конца.

  5. peek_front() и peek_rear() — просмотреть элементы.

  6. is_empty()

  • Можно реализовать на массиве с управлением индексами.

Служба поддержки сайта
Вы используете гостевой доступ (Вход)
Сводка хранения данных
Скачать мобильное приложение Яндекс.Метрика
На платформе Moodle