Modify the Queue Template class given in Section 17.2 so that it implements a priority queue. A priority queue is similar to a regular queue except that each item added to the queue also has an associated priority. For this problem, make the priority an integer where 0 is the highest priority and larger values are increasingly lower in priority.
The remove function should return and remove the item that has the highest priority.
For example,
q.add('X', 10);
q.add('Y', 1);
q.add('Z', 3);
cout << q.remove(); //Returns Y
cout << q.remove(); //Returns Z
cout << q.remove(); //Returns X
Test your queue on data with priorities in various orders (e.g., ascending, descending, mixed). You can implement the priority queue by performing a linear search in the remove() function. In future courses, you may study a data structure called a heap that affords a more efficient way to implement a priority queue.
We need at least 10 more requests to produce the solution.
0 / 10 have requested this problem solution
The more requests, the faster the answer.