01 Jul C++ Programming (7)
Question Description
Write your own class that implements a priority. Use the following UML diagram and attribute descriptions. Place all the code for the class in a single header file named PQueue.h. The priority queue should be implemented using a pointer-based singly linked list that is sorted by priority in descending order. Be sure to include preprocessor guards.
Class Attributes:
Node – a private, nested struct.
name – stores the name of a person in line.
pri – their priority level. Higher integers mean a higher priority.
next – a pointer that holds the memory address of the next node in the list.
head – a Node pointer that stores the memory address of the head node, which is the node containing the highest priority information.
constructor – initializes head to null.
destructor – frees all memory used by the priority queue..
enqueue – accepts an integer (the priority) and a string (the name of the person in line) as it’s only arguments. Adds a node containing the arguments into the list, maintaining the correct order. Returns 0 if successful, -1 otherwise.
dequeue – removes the highest priority node from the list. Returns 0 if successful, -1 otherwise. Since the list is always sorted by prioirty in descending order, this means it’s always going to be the head node that gets deleted.
front – assigns the name of the highest priority person in the list to it’s reference parameter. Returns 0 if successful, -1 otherwise. Failure means -1 is returned and nothing is assigned to the reference parameter.
Make sure to mark accessors const (principle of least priviledge)
Hints:
If your program crashes, you’re almost certainly accessing an invalid memory location.
Submission Instructions:
Submit your class in it’s own header file named PQueue.h. Be sure to include preprocesso guards.
Our website has a team of professional writers who can help you write any of your homework. They will write your papers from scratch. We also have a team of editors just to make sure all papers are of HIGH QUALITY & PLAGIARISM FREE. To make an Order you only need to click Ask A Question and we will direct you to our Order Page at WriteDemy. Then fill Our Order Form with all your assignment instructions. Select your deadline and pay for your paper. You will get it few hours before your set deadline.
Fill in all the assignment paper details that are required in the order form with the standard information being the page count, deadline, academic level and type of paper. It is advisable to have this information at hand so that you can quickly fill in the necessary information needed in the form for the essay writer to be immediately assigned to your writing project. Make payment for the custom essay order to enable us to assign a suitable writer to your order. Payments are made through Paypal on a secured billing page. Finally, sit back and relax.
About Writedemy
We are a professional paper writing website. If you have searched a question and bumped into our website just know you are in the right place to get help in your coursework. We offer HIGH QUALITY & PLAGIARISM FREE Papers.
How It Works
To make an Order you only need to click on “Order Now” and we will direct you to our Order Page. Fill Our Order Form with all your assignment instructions. Select your deadline and pay for your paper. You will get it few hours before your set deadline.
Are there Discounts?
All new clients are eligible for 20% off in their first Order. Our payment method is safe and secure.