Gate CS-2008 Question Paper With Solutions

Q. 76 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,71,2,3,4,5,6,7 in the given order. What will be the contents of the list after 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 : ;
    }   
}

(A) 1,2,3,4,5,6,7

(B) 2,1,4,3,6,5,7

(C) 1,3,2,5,4,7,6

(D) 2,3,4,5,6,7,1

Answer: (B)

Explanation:

Gate CS-2008 Question Paper With Solutions

Learn More:   Gate ME-2007 Question Paper With Solutions

LEAVE A REPLY

Please enter your comment!
Please enter your name here