Question: Given main() in the ShoppingList class, define an insertAtEnd() method in the ItemNode class that adds an element to the end of a linked list.

Given main() in the ShoppingList class, define an insertAtEnd() method in the ItemNode class that adds an element to the end of a linked list. DO NOT print the dummy head node.

Ex. if the input is:

4 Kale Lettuce Carrots Peanuts where 4 is the number of items to be inserted; Kale, Lettuce, Carrots, Peanuts are the names of the items to be added at the end of the list.

The output is:

Kale Lettuce Carrots Peanuts

import java.util.Scanner;

public class ShoppingList { public static void main (String[] args) { Scanner scnr = new Scanner(System.in);

ItemNode headNode; // Create intNode objects ItemNode currNode; ItemNode lastNode;

String item; int i;

// Front of nodes list headNode = new ItemNode(); lastNode = headNode;

int input = scnr.nextInt();

for(i = 0; i < input; i++ ){ item = scnr.next(); currNode = new ItemNode(item); lastNode.insertAtEnd(headNode, currNode); lastNode = currNode; }

// Print linked list currNode = headNode.getNext(); while (currNode != null) { currNode.printNodeData(); currNode = currNode.getNext(); } } }

public class ItemNode { private String item; private ItemNode nextNodeRef; // Reference to the next node

public ItemNode() { item = ""; nextNodeRef = null; }

// Constructor public ItemNode(String itemInit) { this.item = itemInit; this.nextNodeRef = null; }

// Constructor public ItemNode(String itemInit, ItemNode nextLoc) { this.item = itemInit; this.nextNodeRef = nextLoc; }

// Insert node after this node. public void insertAfter(ItemNode nodeLoc) { ItemNode tmpNext;

tmpNext = this.nextNodeRef; this.nextNodeRef = nodeLoc; nodeLoc.nextNodeRef = tmpNext; }

// TODO: Define insertAtEnd() method that inserts a node // to the end of the linked list

// Get location pointed by nextNodeRef public ItemNode getNext() { return this.nextNodeRef; } public void printNodeData() { System.out.println(this.item); } }

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Accounting Questions!