建了一个单项链表环...如何将此链表的环反向旋转啊?有答案立即结贴.
建了一个链表环...如何将此链表的环反向旋转啊?
结构
struct mr_node
{
int data;
mr_node *next;
};
代码:
mr_node *p1=NULL;
mr_node *p2=NULL;
mr_node *p3=NULL;
p1=(mr_node *)(malloc(sizeof(mr_node)));
p1->data=0;
p2=p1;
p3=p1;
for(int a=1;a<20;a++)
{
p1=(mr_node *)(malloc(sizeof(mr_node)));
p1->data=a;
p2->next=p1;
p2=p1;
}
p1->next=p3;
mr_node mr_array1[20];
int a=0;
p2=p3;
do
{
mr_array1[a]=*p2;
a++;
p2=p2->next;
}while(p2!=p3);
for(int a=0;a<19;a++)
{
mr_array1[a].next=&mr_array1[a-1];
}
mr_array1[19].next=&mr_array1[0];
p2=p3;
do
{ p1=p2;
p2=p2->next;
free(p1);
}while(p2!=p3);
}
不对,请指点.谢谢.