Java: An Introduction to Problem Solving and Programming (8th Edition)
Java: An Introduction to Problem Solving and Programming (8th Edition)
8th Edition
ISBN: 9780134462035
Author: Walter Savitch
Publisher: PEARSON
Question
Book Icon
Chapter 12, Problem 11PP
Program Plan Intro

“LinkedQueue” class

Program Plan:

Filename: “LinkedQueue.java”

  • Define “LinkedQueue” class.
    • Declare variable for reference of first node and number of items.
    • Default constructor for “LinkedQueue” class.
      • Set front to “null” and count to “0”.
    • Define the method “addToQueue()” with argument of “item”.
      • If “front” is not equal to “null”, then
        • Create a new node using “QueueNode” class.
        • Create a reference to front.
        • Performs “while” loop. This loop will repeat to obtain last node.
          • Compute the value of next node by calling “getNextNode()” method.
        • Set the new node at last of the queue by calling “setNextNode()” method.
            • If the queue is empty, then
              • Assign the next node to “null” by using “QueueNode” class.
              • Increment the number of items.
    • Define the method “removeFromQueue()”.
      • If the queue is not empty, then get the element at front node by calling “getQueueElement()” method and eliminate the front node.
        • Finally returns the resultant element.
            • If the queue is empty, then returns null.
    • Define the method “isEmpty()”.
      • This method returns “true” if the value of “count” is equal to “0”. Otherwise, returns “false”.
    • Define the method “displayQueueValues()”.
      • Create a reference to front.
      • Performs “while” loop. This loop will repeat to display all elements in queue.
        • Display the element of the queue.
        • Go to the next node by using “getNextNode()” method.

Filename: “QueueNode.java”

  • Define “QueueNode” class.
    • Declare required variables for queue elements and next node value.
    • Create default constructor for “QueueNode” class.
      • Assign “null” values for queue elements and next node.
    • Create the parameterized constructor for “QueueNode” class.
    • Define the method “setNextNode()” which is used to set value for next node.
    • Define the method “getNextNode()” which is used to returns the next node value.
    • Define the method “setQueueElement()” which is used to assign value for queue elements.
    • Define the method “getQueueElement()” which is used to returns queue elements.

Filename: “LinkedQueueTest.java”

  • Define “LinkedQueueTest” class.
    • Define main function.
      • Create an object “nameQueue” for “LinkedQueue” class.
      • Add names to object “nameQueue” by using “addToQueue()” method.
      • Call the method “displayQueueValues()” to display the elements in queue.
      • Remove an element from the queue by calling the method “removeFromQueue()”.
      • Display the result of whether the queue is empty or not by calling the method “isEmpty()”.
      • Display the elements in queue after removing an element from queue by calling the method “displayQueueValues()”.
      • Remove the elements from the queue by calling the method “removeFromQueue()”.
      • Display the result of whether the queue is empty or not by calling the method “isEmpty()”.

Blurred answer
Students have asked these similar questions
In this assignment, you will create a Linked List data structure variant called a “Circular Linked List”. The Node structure is the same as discussed in the slides and defined as follows (we will use integers for data elements): public class Node {          public int data;          public Node next; }   For the Circular Linked List, its class definition is as follows:   public class CircularLinkedList {          public int currentSize;          public Node current; }   In this Circular Linked List (CLL), each node has a reference to an existing next node. When Node elements are added to the CLL, the structure looks like a standard linked list with the last node’s next pointer always pointing to the first. In this way, there is no Node with a “next” pointer in the CLL that is ever pointing to null. For example, if a CLL has elements “5”, “3” and “4” and “current” is pointing to “3”, the CLL should look like:   Key observations with this structure: The currentSize is 3 meaning there…
Computer Science Write a program in the Java language that includes: 1. A class for books, taking into account the encapsulation and getter, setter. 2. Entering books by the user using Scanner 3. LinkedList class for: (Adding a new book - Inserting a book- Searching for a book using the ISBN Number - Viewing all books,delete book). 4. Serial number increases automatically with each book that is entered. 5. Printing the names of books is as follows: Serial - ISBN - Name - PubYear - Price - Notes. 6-Design a main menu that includes: • Add Book • Insert Book • Delete Book • Search . Display . Exit
A business that sells dog food keeps information about its dog food products in a linked list.  The list is named dogFoodList.  (This means dogFoodList points to the first node in the list.)  A node in the list contains the name of the dog food (a String), a dog food ID (also a String)  and the price (a double.) a.)  Create a class for a node in the list. b.)   Use this class to write pseudocode or Java for a public method that prints the name of all dog foods in the list where the price is more than $20.00.

Chapter 12 Solutions

Java: An Introduction to Problem Solving and Programming (8th Edition)

Ch. 12.1 - Prob. 12STQCh. 12.2 - Prob. 13STQCh. 12.2 - Prob. 14STQCh. 12.2 - Prob. 15STQCh. 12.2 - Prob. 16STQCh. 12.3 - Prob. 17STQCh. 12.3 - Prob. 18STQCh. 12.3 - Prob. 19STQCh. 12.3 - Write a definition of a method isEmpty for the...Ch. 12.3 - Prob. 21STQCh. 12.3 - Prob. 22STQCh. 12.3 - Prob. 23STQCh. 12.3 - Prob. 24STQCh. 12.3 - Redefine the method getDataAtCurrent in...Ch. 12.3 - Repeat Question 25 for the method...Ch. 12.3 - Repeat Question 25 for the method...Ch. 12.3 - Repeat Question 25 for the method...Ch. 12.4 - Revise the definition of the class ListNode in...Ch. 12.4 - Prob. 30STQCh. 12.5 - What is the purpose of the FXML file?Ch. 12.5 - Prob. 32STQCh. 12 - Repeat Exercise 2 in Chapter 7, but use an...Ch. 12 - Prob. 2ECh. 12 - Prob. 3ECh. 12 - Repeat Exercises 6 and 7 in Chapter 7, but use an...Ch. 12 - Write a static method removeDuplicates...Ch. 12 - Write a static method...Ch. 12 - Write a program that will read sentences from a...Ch. 12 - Repeat Exercise 12 in Chapter 7, but use an...Ch. 12 - Write a program that will read a text file that...Ch. 12 - Revise the class StringLinkedList in Listing 12.5...Ch. 12 - Prob. 12ECh. 12 - Write some code that will use an iterator to...Ch. 12 - Prob. 14ECh. 12 - Write some code that will use an iterator to...Ch. 12 - Prob. 17ECh. 12 - Revise the method selectionSort within the class...Ch. 12 - Repeat the previous practice program, but instead...Ch. 12 - Repeat Practice Program 1, but instead write a...Ch. 12 - Write a program that allows the user to enter an...Ch. 12 - Write a program that uses a HashMap to compute a...Ch. 12 - Write a program that creates Pet objects from data...Ch. 12 - Repeat the previous programming project, but sort...Ch. 12 - Repeat the previous programming project, but read...Ch. 12 - Prob. 9PPCh. 12 - Prob. 10PPCh. 12 - Prob. 11PPCh. 12 - Prob. 12PPCh. 12 - Prob. 13PPCh. 12 - Prob. 14PPCh. 12 - Prob. 15PP
Knowledge Booster
Background pattern image
Similar questions
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning