The Gateway to Computer Science Excellence
First time here? Checkout the FAQ!
x
+15 votes
1.6k views
  1. Let $p$ be a pointer as shown in the figure in a single linked list.                     

                                           
What do the following assignment statements achieve?
 

q: = p -> next
p -> next:= q -> next
q -> next:=(q -> next) -> next
(p -> next) -> next:= q
in DS by Veteran (52.1k points)
edited by | 1.6k views

5 Answers

+27 votes
Best answer
Swaps the two nodes next to $p$ in the linked list.
by Veteran (416k points)
edited by
+12

1)

2)

3)

+10 votes
Assuming p is "i" th node. It swaps "i+1" th & "i+2" th node.

How to solve this question :-> Instead of using arrows, try writing address in pointer location , as computer would store, then solving linked list questions like this becomes easy..
by Boss (41.1k points)
+6 votes

It is swapping the 2nd and 3rd element of a Linked List.(i.e. if we consider that p points to first node)

#include <stdio.h>
struct node{
    int data;
    struct node *next;
};
struct node *head = NULL;
struct node *temp;
void insert(int item){
    struct node *p = (struct node*)malloc(sizeof(struct node));
    p->data = item;
    if(head == NULL){
        head = p;
        temp = p;
    }
    else{
        temp->next = p;
        temp = p;
    }
}
void display(struct node *t){
    struct node *r = t;
    while(r){
        printf("%d",r->data);
        r = r->next;
    }
}
void modify(struct node *p){
    struct node *q;
    q = p -> next;
    p -> next= q -> next;
    q -> next=(q -> next) -> next;
    (p -> next) -> next= q;
}
int main(void) {
    insert(1);
    insert(2);
    insert(3);
    insert(4);
    insert(5); 
    insert(6);
    insert(7); 
    insert(8);
    insert(9);  
    modify(head); 
    display(head);
    return 0;  
}  

If input is 123456789, then output will be 132456789

by Active (3k points)
+1 vote

The following piece of code swap 2nd and 3rd node from list.

by (81 points)
0 votes
swap middle two element position in linked list
by (141 points)

Related questions

Quick search syntax
tags tag:apple
author user:martin
title title:apple
content content:apple
exclude -tag:apple
force match +apple
views views:100
score score:10
answers answers:2
is accepted isaccepted:true
is closed isclosed:true
49,807 questions
54,729 answers
189,317 comments
79,913 users