QuestionQuestion

Construct a circular queue of strings with maximum size 12 using a linked list to make the following behavior work: Until the user enters the entry quit, keep prompting the user for data to put into the queue. Enqueue this data into the circular queue. If/when the circular queue runs out of space, begin overwriting the beginning of the queue. When the user enters quit, dequeue and output the contents of the queue to the screen, with each entry on a line by itself. Be sure to only output the true number of items in the queue, up to the maximum number.

Solution PreviewSolution Preview

These solutions may offer step-by-step problem-solving explanations or good writing examples that include modern styles of formatting and construction of bibliographies out of text citations and references. Students may use these solutions for personal skill-building and practice. Unethical use is strictly forbidden.

public class Circular_Queue {

    private Queue_Node front;
    private int size;
    // Construct a circular queue of strings with maximum size 12
    private static final int MAX_SZIE = 12;

    /**
    * constructor
    */
    public Circular_Queue() {
       size = 0;
       front = null;
    }

    /**
    * push item to queue
    * @param val
    */
    public void enqeue(String val) {
      
       // trival case
       if (size < MAX_SZIE) {
            
            // make a new node
            Queue_Node qn = new Queue_Node(val, front);
            
            // first time
            if (front == null) {
                front = qn;
                front.setQueue_Link(front);
            } else { // other time
               
                // move to the end of the list
                Queue_Node curr = front;
                while (curr.getQueue_Link() != front) {
                   curr = curr.getQueue_Link();
                }
                // set it
                curr.setQueue_Link(qn);
            }
            size++;
       } else { // non trival case...

By purchasing this solution you'll be able to access the following files:
SolutionTest.java and Solution.java.

$20.00
for this solution

or FREE if you
register a new account!

PayPal, G Pay, ApplePay, Amazon Pay, and all major credit cards accepted.

Find A Tutor

View available Java Programming Tutors

Get College Homework Help.

Are you sure you don't want to upload any files?

Fast tutor response requires as much info as possible.

Decision:
Upload a file
Continue without uploading

SUBMIT YOUR HOMEWORK
We couldn't find that subject.
Please select the best match from the list below.

We'll send you an email right away. If it's not in your inbox, check your spam folder.

  • 1
  • 2
  • 3
Live Chats