您的位置:首页 > 其它

链表反转

2015-09-26 01:34 337 查看
#include<stdio.h>

#include<stdlib.h>

typedef struct linklist

{
int data;
struct linklist * next;

}node,*link;

void CreatRear(link &l,int m)

{
l=(link)malloc(sizeof(node));
link r=l;
for(int i=0;i<m;i++)
{
link p=(link)malloc(sizeof(node));
p->data=i;
r->next=p;
r=p;
}
r->next=NULL;

}

void reverse(link &l)

{
link p,m,r;
p=l->next;
m=p->next;
if(m)
return;
r=m->next;
p->next=NULL;
while(r)
{
m->next=p;
p=m;
m=r;
r=r->next;
}
m->next=p;
l->next=m;

}

void out(link l)

{
l=l->next;
while(l)
{
printf("%d ",l->data);
l=l->next;
}
printf("\n");

}

int main()

{

    link l;
CreatRear(l,1);
//reverse(l);
out(l);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: