双向循环链表两个节点交换的原则

假设q是p的前驱结点; 
总共分三阶段 
1.p与新前驱建立联系 
q->llink->rlink=p;
p->link=q->llink;

2.q与新后驱建立联系 
p->rlink->llink=q;
q-rlink=p->rlink;

3.p与q互连
p->rlink=q;
q->llink=p;

:总结一下其实在交换过程中要注意的就是不能丢掉前后两端结点的地址, 
也就是说在任何时间都应该可以得到两端的结点

你可能感兴趣的:(双向循环链表两个节点交换的原则)