Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Language is c++. Write a queue class to implement a queue using a 2 directional

ID: 3800687 • Letter: L

Question

Language is c++.

Write a queue class to implement a queue using a 2 directional linked list.

Test the program with the following sequence of code:

queue myQ;   ( Use default constructor to initialize front and end to NULL. )

cout<< myQ.size() << endl; // number of elements in queue

myQ.dequeue();   // Try to deqeue when the queue is empty. Should catch UNDERFLOW

myQ.enqueue("Fred");

myQ.enqueue("Liv");

myQ.enqueue("Julie");

myQ.enqueue("Rich");

myQ.enqueue("William");

myQ.enqueue("Olo");

myQ.enqueue("Xi");

myQ.enqueue("Chu");

myQ.enqueue("Annie");

myQ.enqueue("Carlos");

myQ.enqueue("Tuyet");

myQ.enqueue("Sue");

cout<< myQ.front() << endl; // name at front, if not empty

cout<< myQ.end() << endl;   // name at end, if not empty

cout<< myQ.size() << endl;   // number of elements in queue

cout << myQ.dequeue() << endl;

cout << myQ.dequeue() << endl;

cout << myQ.dequeue() << endl;;

myQ.enqueue("Olive");

myQ.enqueue("Jim");

cout << myQ.dequeue() << endl;

cout << myQ.dequeue() << endl;

cout<< myQ.front() << endl; // name at front, if not empty

cout<< myQ.end() << endl;   // name at end, if not empty

cout<< myQ.size() << endl;   // number of elements in queue

Please I need I functional code.

Explanation / Answer

queue myQ;   ( Use default constructor to initialize front and end to NULL. )

cout<< myQ.size() << endl; // number of elements in queue

myQ.dequeue();   // Try to deqeue when the queue is empty. Should catch UNDERFLOW

myQ.enqueue("Fred");

myQ.enqueue("Liv");

myQ.enqueue("Julie");

myQ.enqueue("Rich");

myQ.enqueue("William");

myQ.enqueue("Olo");

myQ.enqueue("Xi");

myQ.enqueue("Chu");

myQ.enqueue("Annie");

myQ.enqueue("Carlos");

myQ.enqueue("Tuyet");

myQ.enqueue("Sue");

cout<< myQ.front() << endl; // name at front, if not empty

cout<< myQ.end() << endl;   // name at end, if not empty

cout<< myQ.size() << endl;   // number of elements in queue

cout << myQ.dequeue() << endl;

cout << myQ.dequeue() << endl;

cout << myQ.dequeue() << endl;;

myQ.enqueue("Olive");

myQ.enqueue("Jim");

cout << myQ.dequeue() << endl;

cout << myQ.dequeue() << endl;

cout<< myQ.front() << endl; // name at front, if not empty

cout<< myQ.end() << endl;   // name at end, if not empty

cout<< myQ.size() << endl;