In C++ Plz LAB: Grocery shopping list (linked list: inserting at the end of a list) Given main(), define an InsertAtEnd() member function 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 ItemNode.h Default Code: #include #include using namespace std; class ItemNode { private:    string item;    ItemNode* nextNodeRef; public:    // Constructor    ItemNode() {        item = "";        nextNodeRef = NULL;    }    // Constructor       ItemNode(string itemInit) {        this->item = itemInit;        this->nextNodeRef = NULL;    }    // Constructor ItemNode(string itemInit, ItemNode *nextLoc) { this->item = itemInit; this->nextNodeRef = nextLoc; }    // Insert node after this node.    void InsertAfter(ItemNode &nodeLoc) { ItemNode* tmpNext;    tmpNext = this->nextNodeRef; this->nextNodeRef = &nodeLoc; nodeLoc.nextNodeRef = tmpNext; }       // TODO: Define InsertAtEnd() function that inserts a node    // to the end of the linked list       // Get location pointed by nextNodeRef       ItemNode* GetNext() {        return this->nextNodeRef;    }    void PrintNodeData() {        cout << this->item << endl;    } };

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
icon
Concept explainers
Question

In C++ Plz

LAB: Grocery shopping list (linked list: inserting at the end of a list)

Given main(), define an InsertAtEnd() member function 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

ItemNode.h Default Code:

#include <iostream>
#include <string>
using namespace std;

class ItemNode {
private:
   string item;
   ItemNode* nextNodeRef;

public:
   // Constructor
   ItemNode() {
       item = "";
       nextNodeRef = NULL;
   }

   // Constructor   
   ItemNode(string itemInit) {
       this->item = itemInit;
       this->nextNodeRef = NULL;
   }

   // Constructor
ItemNode(string itemInit, ItemNode *nextLoc) {
this->item = itemInit;
this->nextNodeRef = nextLoc;
}

   // Insert node after this node.   
void InsertAfter(ItemNode &nodeLoc) {
ItemNode* tmpNext;
  
tmpNext = this->nextNodeRef;
this->nextNodeRef = &nodeLoc;
nodeLoc.nextNodeRef = tmpNext;
}
  
   // TODO: Define InsertAtEnd() function that inserts a node
   // to the end of the linked list
  

   // Get location pointed by nextNodeRef   
   ItemNode* GetNext() {
       return this->nextNodeRef;
   }

   void PrintNodeData() {
       cout << this->item << endl;
   }
}; 

 

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Types of Linked List
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
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