Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Implement all four tasks in Lab sheet #9. Please submit one single C/CPP source file which contains all of the required functions including the tasks

image text in transcribed
image text in transcribed
image text in transcribed
image text in transcribed
Implement all four tasks in Lab sheet #9.
Please submit one single C/CPP source file which contains all of the required functions including the tasks and a main function that calls and test the task functions.
Laboratory Works Laboratory work will be done at the laboratory, Consider the following linked list node structure: struct node int data; struct node *next; Implement the following basic functions of the linear linked list structure: Check empty list int is_empty struct node *header) if(header":NULL) return 1; //TRUE else return 0; //FALSE 2. Create a node struct node * newnode(int d) struct node *temp: temp=(struct node *) malloc(sizeof(node)); temp->data-d; temp->next=NULL; return temp: } Insert a node into front/back/middle of LL struct node.insertFront(struct node *header, int d) struct node *temp: temp-newnode(d); temp->next =header; header-temp: return header; } struct node *insertBack(struct node *header, int d) struct node *temp, *headertemp: temp-newnode(d); if header-=NULL) header temp; return header: headertemp-header; while(headertemp->next!=NULL) headertemp headertemp->next; headertemp->next-temp; return header: } void insert After(struct node *afterNode, int d) struct node *temp: temp-newnode(d): temp->next-afterNode->next; afterNode->next=temp; 4. Delete a node from front/back/ middle of LL struct node * deleteFront(struct node *header) struct node *temp: if(header=NULL) return header: temp-header; header=header->next; free(temp); return header; } struct node * delete Back(struct node *header) struct node *temp, *headertemp; if(header=NULL) return header; headertemp-header; while(headertemp->next->next!=NULL) headertemp =headertemp->next; temp=headertemp->next; temp-headertemp->next; headertemp->next=NULL; free(temp); return header; } void deleteAfter(struct node *afterNode) struct node *temp: if(afterNode->next=NULL || afterNode=NULL) return; temp =afterNode->next; afterNode->next-temp->next; free(temp); } Task 1: Write down a complete C/C++ program to test your linear linked list implementation. Additionally, write another function which will be used to list the linked list content. Complete your implementation using the following code: header = insertBack (header, 2); header = insertBack (header, 4); header - insertBack(header, 6); DisplayList (header); header - insertFront (header, 1); DisplayList (header); insertAfter (header->next->next, 5); DisplayList (header); header = delete Front (header); DisplayList (header); header - deleteBack (header); DisplayList (header); deleteAfter (header->next); DisplayList (header); Task 2: Write a function that moves a node forward in the given linked list. Take the pointer of the node to be moved as a parameter. void moveforwardlist (struct node *, struct node *); Task 3: Write a function that moves a node backward in the given linked list. Take the pointer of the node to be moved as a parameter. void movebackwardlist (struct node *, struct node *); afterNode->next-temp->next; free(temp); Task 1: Write down a complete C/C++ program to test your linear linked list implementation. Additionally, write another function which will be used to list the linked list content. Complete your implementation using the following code: header = insertBack (header, 2); header - insertBack (header, 4); header = insertBack (header, 6); DisplayList (header); header = insert Front (header, 1); DisplayList (header); insertAfter (header->next->next,5); DisplayList (header); header = deleteFront (header); DisplayList (header); header = deleteBack (header); DisplayList (header); deleteAfter (header->next); DisplayList (header); Task 2: Write a function that moves a node forward in the given linked list. Take the pointer of the node to be moved as a parameter. void moveforwardlist (struct node *, struct node *); Task 3: Write a function that moves a node backward in the given linked list. Take the pointer of the node to be moved as a parameter. void movebackwardlist (struct node *struct node *); Task 4: Write a function that loads the linked list with the given values of an array. Consider array and its size as input parameter to the function. void loadlist (struct node *, int[], int ); 2

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Intranet And Web Databases For Dummies

Authors: Paul Litwin

1st Edition

0764502212, 9780764502217

More Books

Students also viewed these Databases questions

Question

Discuss the activities that constitute effective safety management.

Answered: 1 week ago

Question

2. Identify issues/causes for the apparent conflict.

Answered: 1 week ago