Vidyalelo
Data Structure · Q171

Introduction to Data Structures

Programming · Data Structure · question 171

Q171

The following C function takes a single-linked list of integers as a parameter and rearranges the elements of the list. The function is called with the list containing the integers 1, 2, 3, 4, 5, 6, 7 in the given order. What will be the contents of the list after the function completes execution? struct node int value; struct node *next; ; void rearrange(struct node *list) struct node *p, * q; int temp; if ((!list) || !list->next) return; p = list; q = list->next; while(q) temp = p->value; p->value = q->value; q->value = temp; p = q->next; q = p?p->next:0;

A.
1, 2, 3, 4, 5, 6, 7
B.
2, 1, 4, 3, 6, 5, 7
Answer
C.
1, 3, 2, 5, 4, 7, 6
D.
2, 3, 4, 5, 6, 7, 1

Answer: Option B

Solution

Answer: Option B
No explanation is given for this question Let's Discuss on Board