У вас вопросы?
У нас ответы:) SamZan.net

Ниже приведен интерфейс класса очереди с приоритетами который функционирует следующим образом

Работа добавлена на сайт samzan.net: 2015-07-10

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 20.5.2025

Необходимо выполнить ВСЕ задания.

  1.  Ниже приведен интерфейс класса очереди с приоритетами, который функционирует следующим образом.

В очередь могут быть добавлены элементы, каждому элементу при добавлении присваивается один из трех уровней приоритета (low, normal, high)

Элементы из очереди извлекаются в соответствии с их приоритетами (сначала извлекаются элементы с приоритетом high, потом normal, потом low), элементы с одинаковыми приоритетами извлекаются из очереди в порядки их поступления.

В очереди также может происходить операция акселерации – все элементы с приоритетом low находящиеся в момент акселерации в очереди увеличивают свой приоритет до high и «обгоняют» элементы с приоритетом normal.

Ниже приведен интерфейс этого класса:

typedef enum

{

   LOW,

   NORMAL,

   HIGH

} ElementPriority;

typedef struct

{

   string name;

} QueueElement;

class QueueWithPriority

{

   // Конструктор, создает пустую очередь

  QueueWithPriority();

   // Деструктор

  ~QueueWithPriority();

   // Добавить в очередь элемент element с приоритетом priority

   void PutElementToQueue(const QueueElement& element, ElementPriority priority);

   // Получить элемент из очереди

   // метод должен возвращать элемент с наибольшим приоритетом, который был

   // добавлен в очередь раньше других

   QueueElement GetElementFromQueue();

   // Выполнить акселерацию

   void Accelerate();

};

Реализовать этот класс, используя list или deque. Объяснить свой выбор.

Протестируете программу, добавьте отладочный вывод, показывающий, что  класс работает правильно.

  1.  Разработайте программу, которая
    1.  Заполняет list<int> 15 случайными значениями от 1 до 20, список может содержать от 0 до 20 значений (обязательно проверить на длине списка 0, 1. 2, 3, 4, 5, 7, 14)
    2.  Выводит содержимое списка в следующем порядке: первый элемент, последний элемент, второй элемент, предпоследний элемент, тритий элемент и т.д.

Например если список содержит:

1 2 3 4 5 6 7 8

то вывод будет иметь вид

1 8 2 7 3 6 4 5

Подсказка: можно использовать рекурсию и двунаправленные итераторы




1. лекциях prefll встречаются вещи в дизайне которых совмещено четыре пять и более оттенков и все они серые
2. На тему- Якутский орнамент.html
3. Увольнение по обстоятельствам, не зависящим от воли сторон- основания и порядок
4. Реферат на тему- Життя і творчість Катрі Гриневичевої 1895 1947 Катря Гриневичева належить до того
5. тематический и естественнонаучный цикл Б2
6. политический режим
7. Тема Экология и проблемы охраны природы 4 часа Цели- Рассмотреть основные экологические пробле
8. Уральский государственный технический университет УПИ Физическая химия Те.
9. the group phenomen which do not require ny explntion since there re similr phenomen in the mother tongue the word order in sentences Birds fly
10. Проблемы источниковедения истории психологии