Homework exercise4.1 E1 E2
E1 Draw a diagram to illustrate the configration of linked nodes that is created by the following statements.
Node *p0=new Node(‘0’);
Node *p1=p0->next=new Node(‘1’);
Node *p2=p1->next=new Node(‘2’,p1);
E2 Write the C++ statements that are needed to create the linked configuration of nodes shown in each of the following diagrams.For each part,embed these statements as part of a program that prints the contents as part of a program that prints the contents of each node(both data and next),therey demonstrating that the nodes have been correctly linked.
(a)
struct Node
{
Node_entry entry;
Node*next;
Node();
Node(Node_entry item,Node*add_on=NULL);
}
Node::Node()
{
next=NULL;
}
Node::Node(Node_entry item,Node*add_on)
{
entry=item;
next=add_on;
}
Node first_node('0');
Node*p0=&first_node;
Node*p1=new Node('1');
p0->next=p1;
(b)
struct Node
{
Node_entry entry;
Node*next;
Node();
Node(Node_entry item,Node*add_on=NULL);
}
Node::Node()
{
next=NULL;
}
Node::Node(Node_entry item,Node*add_on)
{
entry=item;
next=add_on;
}
Node first_node('0');
Node*p0=&first_node;
Node*p1=new Node('1');
Node*p2=Node('1',p0);
(c)
struct Node
{
Node_entry entry;
Node*next;
Node();
Node(Node_entry item,Node*add_on=NULL);
}
Node::Node()
{
next=NULL;
}
Node::Node(Node_entry item,Node*add_on)
{
entry=item;
next=add_on;
}
Node first_node('0');
Node*p0=&first_node;
Node*p1=new Node('1');
p0->next=p1;
Node*p2=Node('2',p1);
p1->next=p2;