数据结构(一)之链表篇

链表篇
在这里插入图片描述

#include<stdio.h>//P77例三 

int ReversDouble(LinkList L)
{   int n=1;
	LinkList pre,p,q;
	pre=L;
	p1=L->next;
	p=L->next;

	while(p)
	{
		q=p->next;
	    if(n%2==1)
	    { 
	        pre=q;
	    	p=q;
	    	n++;
		}
		if(n%2==0)
		{
			pre->next=p->next;
		    p->next=p1;
		    L->next=p;
		    p=q;
		    n++;
		}
	}
}

在处理链表时,经常要定义一个前驱指针pre,当前指针p,下一个指针q
不要忘了每次比较完成时令p=q,因为如果对p进行操作的话,p的next域会被覆盖。

猜你喜欢

转载自blog.csdn.net/weixin_43752167/article/details/85285178