Question: Please complete the required methods. Then, ensure that a deep copy is made, so that every person struct is duplicated. #include #include #include #include struct

Please complete the required methods. Then, ensure that a deep copy is made, so that every person struct is duplicated.

#include #include #include #include

struct person { char *name; int age; struct person * next; ;

struct linkedlist { struct person *front; struct person *rear; };

void print (struct person *p) { printf ("Name=%s age=%d ", p->name, p->age); }

struct person* makeNode (char* name, int age) { struct person *p; p = (struct person*) malloc (sizeof(struct person)); p->name = name; p->age = age; p->next = NULL; return p; }

struct linkedlist* initList () { struct linkedlist* L; L = (struct linkedlist*) malloc (sizeof(struct linkedlist)); L->front = NULL; L->rear = NULL; return L; }

void addToList (struct linkedlist* L, char* name, int age) { if (L->front == NULL) { L->front = makeNode (name, age); L->rear = L->front; } else { L->rear->next = makeNode (name, age); L->rear = L->rear->next; } }

void printList (struct linkedlist* L) { struct person *p;

// WRITE YOUR CODE HERE }

struct linkedlist* copy (struct linkedlist* L) { struct person *p; struct linkedlist *L2;

// WRITE YOUR CODE HERE }

int main () { struct linkedlist *L1, *L2;

L1 = initList (); addToList (L1, "R2-D2", 609); addToList (L1, "Optimus Prime", 2700); addToList (L1, "Wall-E", 210); printList (L1);

L2 = copy (L1);

addToList (L2, "T-1000", 30);

printList (L2);

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 Databases Questions!