head = (node *)malloc(sizeof(node)); which returns a pointer to a structure of type node that has been type defined earlier. The linked list is then created by the function create. The function requests for the number to be placed in the current node that has been created. If the value assigned to the current node is -999, then null is assigned to the pointer variable next and the list ends. Otherwise, memory space is allocated to the next node using again the malloc function and the next value is placed into it. Not that the function create calls itself recursively and the process will continue until we enter the number -999. The items stored in the linked list are printed using the function print which accept a pointer to the current node as an argument. It is a recursive function and stops when it receives a NULL pointer. Printing algorithm is as follows; 1. Start with the first node. 2. While there are valid nodes left to print a) print the current item and b) advance to next node Similarly, the function count counts the number of items in the list recursively and return the total number of items to the main function. Note that the counting does not include the item -999 (contained in the dummy node).

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter17: Linked Lists
Section: Chapter Questions
Problem 18SA
icon
Related questions
Question
head = (node *)malloc(sizeof(node));
which returns a pointer to a structure of type node that has been type defined earlier. The linked
list is then created by the function create. The function requests for the number to be placed in
the current node that has been created. If the value assigned to the current node is -999, then
null is assigned to the pointer variable next and the list ends. Otherwise, memory space is
allocated to the next node using again the malloc function and the next value is placed into it.
Not that the function create calls itself recursively and the process will continue until we enter the
number -999.
The items stored in the linked list are printed using the function print which accept a pointer to
the current node as an argument. It is a recursive function and stops when it receives a NULL
pointer. Printing algorithm is as follows;
1.
Start with the first node.
2. While there are valid nodes left to print
a) print the current item and
b) advance to next node
Similarly, the function count counts the number of items in the list recursively and return the total
number of items to the main function. Note that the counting does not include the item -999
(contained in the dummy node).
Transcribed Image Text:head = (node *)malloc(sizeof(node)); which returns a pointer to a structure of type node that has been type defined earlier. The linked list is then created by the function create. The function requests for the number to be placed in the current node that has been created. If the value assigned to the current node is -999, then null is assigned to the pointer variable next and the list ends. Otherwise, memory space is allocated to the next node using again the malloc function and the next value is placed into it. Not that the function create calls itself recursively and the process will continue until we enter the number -999. The items stored in the linked list are printed using the function print which accept a pointer to the current node as an argument. It is a recursive function and stops when it receives a NULL pointer. Printing algorithm is as follows; 1. Start with the first node. 2. While there are valid nodes left to print a) print the current item and b) advance to next node Similarly, the function count counts the number of items in the list recursively and return the total number of items to the main function. Note that the counting does not include the item -999 (contained in the dummy node).
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning