erations. (a) A default constructor that creates an empty queue. (b) A method size () that returns the number of elements in the queue (c) A method empty() that returns true if the queue is empty. (d) A method push (e) that adds a copy of elemente to the back of the queue. (e) A method pop () that removes the front element of the queue. A copy of that element is also returned. The easiest way to implement this class is to use an STL list to store the elements of the queue. But for the purposes of this assignment, you ar not allowed to do that. Instead, you have to directly use a singly-linked list that is, a linked list in which each node has only one pointer. Implement the Queue operations as efficiently as possible. Most opera tions can be implemented to run in constant time.

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

C++

A queue is essentially a waiting list. It’s a sequence of elements with a front and a back. Elements can only be added to the back of the queue and they can only be removed from the front of the queue. Elements are kept in order so that the first element to enter the queue is the first one to leave it.

Create a generic class of queues called Queue. Include the following op-
erations.
(a) A default constructor that creates an empty queue.
(b) A method size () that returns the number of elements in the queue.
(c) A method empty () that returns true if the queue is empty.
(d) A method push (e) that adds a copy of element e to the back of the
queue.
(e) A method pop () that removes the front element of the queue. A
copy of that element is also returned.
The easiest way to implement this class is to use an STL list to store the
elements of the queue. But for the purposes of this assignment, you are
not allowed to do that. Instead, you have to directly use a singly-linked list,
that is, a linked list in which each node has only one pointer.
Implement the Queue operations as efficiently as possible. Most opera-
tions can be implemented to run in constant time.
Split your class into header and implementation file in the usual way. Sub-
mit your test driver.
Transcribed Image Text:Create a generic class of queues called Queue. Include the following op- erations. (a) A default constructor that creates an empty queue. (b) A method size () that returns the number of elements in the queue. (c) A method empty () that returns true if the queue is empty. (d) A method push (e) that adds a copy of element e to the back of the queue. (e) A method pop () that removes the front element of the queue. A copy of that element is also returned. The easiest way to implement this class is to use an STL list to store the elements of the queue. But for the purposes of this assignment, you are not allowed to do that. Instead, you have to directly use a singly-linked list, that is, a linked list in which each node has only one pointer. Implement the Queue operations as efficiently as possible. Most opera- tions can be implemented to run in constant time. Split your class into header and implementation file in the usual way. Sub- mit your test driver.
Expert Solution
steps

Step by step

Solved in 3 steps with 1 images

Blurred answer
Knowledge Booster
Stack
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education