EBK STARTING OUT WITH C++
EBK STARTING OUT WITH C++
9th Edition
ISBN: 9780134996066
Author: GADDIS
Publisher: PEARSON CUSTOM PUB.(CONSIGNMENT)
Expert Solution & Answer
Book Icon
Chapter 18.2, Problem 18.6CP

Explanation of Solution

Appending a node:

It is the process of adding a new node at the end of a linked list.

Member function for appending a node:

The following member function is used to append the received value into a list at end:

//Definition of appendNode() function

void IntList::appendNode(int num)

{

//Declare a structure pointer variables

ListNode *newNode, *dataPtr = nullptr;

//Assign a new node

newNode = new ListNode;

//Store the argument value into "newNode"

newNode->value = num;

//Assign the next pointer to be "NULL"

newNode->next = nullptr;

//Condition to check whether the list is empty or not 

if (!head)

//If true, make newNode as the first node

head = newNode;

//else part

else 

{

//Store head value into dataPtr

dataPtr = head;

//Loop to find the last node in the list

while (dataPtr->next)

//Assign last node to the structure variable

dataPtr = dataPtr->next;

//Insert newNode as the last node

dataPtr->next = newNode;

}

}

Explanation:

Consider the function named “appendNode()” to insert the received value “num” at end of the list.

  • Make a new node and assign a received value “num” into the node.
  • Using “if…else” condition check whether the list is empty or not.
    • If the “head” node is empty, assign a new node into “head” pointer.
    • Otherwise, make a loop to find a last node in the list and insert the value at end of the list.

Inserting a node:

It is the process of adding a new node at a specific location in a list.

Member function for inserting a node:

The following member function is used to insert the received value into a list at specific location:

//Definition of insertNode() function

void IntList::insertNode(int num)

{

/*Declare a structure pointer variables*/

ListNode *newNode, *dataPtr, *prev = nullptr;

//Assign a new node

newNode = new ListNode;

//Store the argument value into "newNode"

newNode->value ...

Blurred answer
Students have asked these similar questions
A cylinder of diameter 10 cm rotates concentrically inside another hollow cylinder of inner diameter 10.1 cm. Both cylinders are 20 cm long and stand with their axis vertical. The annular space is filled with oil. If a torque of 100 kg cm is required to rotate the inner cylinder at 100 rpm, determine the viscosity of oil. Ans. μ= 29.82poise
Make the following game user friendly with GUI, with some simple graphics The following code works as this: The objective of the player is to escape from this labyrinth. The player starts at the bottom left corner of the labyrinth. He has to get to the top right corner of the labyrinth as fast he can, avoiding a meeting with the evil dragon. The player can move only in four directions: left, right, up or down. There are several escape paths in all labyrinths. The player’s character should be able to moved with the well known WASD keyboard buttons. If the dragon gets to a neighboring field of the player, then the player dies. Because it is dark in the labyrinth, the player can see only the neighboring fields at a distance of 3 units.  Cell Class: public class Cell { private boolean isWall; public Cell(boolean isWall) { this.isWall = isWall; } public boolean isWall() { return isWall; } public void setWall(boolean isWall) { this.isWall = isWall; } @Override public String toString() {…
Please original work What are four of the goals of information lifecycle management think they are most important to data warehousing, Why do you feel this way, how dashboards can be used in the process, and provide a real life example for each. Please cite in text references and add weblinks
Knowledge Booster
Background pattern image
Similar questions
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
Programming Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage