Starting Out with Java: From Control Structures through Data Structures (4th Edition) (What's New in Computer Science)
Starting Out with Java: From Control Structures through Data Structures (4th Edition) (What's New in Computer Science)
4th Edition
ISBN: 9780134787961
Author: Tony Gaddis, Godfrey Muganda
Publisher: PEARSON
Expert Solution & Answer
Book Icon
Chapter 19, Problem 2AW

Explanation of Solution

Method definition for “reverse()”:

The method definition for “reverse()” is given below:

/* Method definition for "reverse()" */

public void reverse()

{

    //Create a list "rev_list" and set it to "null"

    Node rev_list = null;

/* This loop will perform up to the first node equals to "null" */

    while (first != null)

    {

/* Move a node to rev_list from what leftovers of the original list */

        /* Set a reference "ref" to first node */

        Node ref = first;

        /* Set "first" to next first node */

        first = first.next;

        /* Set next node to "rev_list" */

        ref.next = rev_list;

        /* Set the "rev_list" to reference "ref" */

        rev_list = ref;

    }

    /* Make the list "rev_list" as the new list */

    first = rev_list;

}

Explanation:

From the above method definition,

  • Create a list “rev_list” and then set it to “null”.
  • Performs “while” loop. This loop will perform up to the first node becomes “null”.
    • Set a reference “ref” to first node.
    • Set “first” to next value of “first”.
    • Assign next node to “rev_list”.
    • Assign the “rev_list” to reference “ref”.
  • Finally make the list “rev_list” as new list.

Complete code:

The complete executable code for “reverse()” method is given below:

//Define "LinkedList1" class

class LinkedList1

{

/* The code for this part is same as the textbook of "LinkedList1" class */

/* Method definition for "reverse()"*/

    public void reverse()

    {

        //Create a list "rev_list" and set it to "null"

        Node rev_list = null;

/* This loop will perform up to the first node equals to "null" */

        while (first != null)

        {

/* Move a node to rev_list from what remains of the original list */

/* Set a reference "ref" to first node */

            Node ref = first;

            /* Set "first" to next first node */

            first = first...

Blurred answer
Students have asked these similar questions
LAB: Inserting an integer in descending order (doubly-linked list)   Given main() and an IntNode class, complete the IntList class (a linked list of IntNodes) by writing the insertInDescendingOrder() method to insert new IntNodes into the IntList in descending order. Ex. If the input is: 3 4 2 5 1 6 7 9 8 -1 the output is: 9 8 7 6 5 4 3 2 1   ______________________________   import java.util.Scanner; public class SortedList { public static void main (String[] args) {Scanner scnr = new Scanner(System.in);IntList intList = new IntList();IntNode curNode;int num; num = scnr.nextInt(); while (num != -1) {// Insert into linked list in descending order curNode = new IntNode(num);intList.insertInDescendingOrder(curNode);num = scnr.nextInt();}intList.printIntList();}} __________________________________   public class IntList {// Linked list nodespublic IntNode headNode;public IntNode tailNode; public IntList() {// Front of nodes listheadNode = null;tailNode = null;} // appendpublic void…
LAB: Inserting an integer in descending order (doubly-linked list)   Given main() and an IntNode class, complete the IntList class (a linked list of IntNodes) by writing the insertInDescendingOrder() method to insert new IntNodes into the IntList in descending order. Ex. If the input is: 3 4 2 5 1 6 7 9 8 -1 the output is: 9 8 7 6 5 4 3 2 1   public class IntList {// Linked list nodes public IntNode headNode;public IntNode tailNode; public IntList() {// Front of nodes list headNode = null;tailNode = null;} // append public void append(IntNode newNode) {if (headNode == null) { // List empty headNode = newNode;tailNode = newNode;}else {tailNode.nextNode = newNode;newNode.prevNode = tailNode;tailNode = newNode;}} // prepend public void prepend(IntNode newNode) {if (headNode == null) { // list empty headNode = newNode;tailNode = newNode;}else {newNode.nextNode = headNode;headNode.prevNode = newNode;headNode = newNode;}}// insertAfter public void insertAfter(IntNode curNode, IntNode…
You are required to complete the LinkedList class. This class is used as a linked list that has many methods to perform operations on the linked list. To create a linked list, create an object of this class and use the addFirst or addLast or add(must be completed) to add nodes to this linked list. Your job is to complete the empty methods. For every method you have to complete, you are provided with a header, Do not modify those headers(method name, return type or parameters). You have to complete the body of the method. package chapter02;

public class LinkedList
{
   protected LLNode list;

   public LinkedList()
   {
      list = null;
   }

   public void addFirst(T info)
   {
      LLNode node = new LLNode(info);
      node.setLink(list);
      list = node;
   }

   public void addLast(T info)
   {
      LLNode curr = list;

      LLNode newNode = new LLNode(info);
      if(curr == null)
      {
         list = newNode;
      }
      else
      {
         while(curr.getLink() !=…
Knowledge Booster
Background pattern image
Similar questions
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Text book image
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Text book image
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
Text book image
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Text book image
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Text book image
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education