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

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

Работа добавлена на сайт samzan.net: 2016-03-13

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

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

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

от 25%

Подписываем

договор

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

Скидка 25% при заказе до 15.3.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. Визначити ступінь узгодженості думок експертів по параметрах зразків техніки
2. Троллейбусный парк 2 2
3. тематические критерии играют главную роль в концепции истины.html
4. ТЕМА 5 Изучение хозяйственной деятельности торгового объекта общественного питания ЗАДАНИЕ 1
5. Интуиция и интеллект в изобразительном искусстве
6. ЗАТВЕРДЖУЮ1
7. Теоретические аспекты имущественного страхования
8. обеспечение перевозок грузов исправными вагонами удовлетворяющими требованиям безопасности движения пер
9. XII 24021994 Закон Верховна Рада України З А К О Н У К Р А Ї Н И Про міжнародний комерційний арбітраж Ц
10. Теория происхождения государства