题意很简单,就是把链表逆置过来,不过真正实现却实有点小纠结。
师姐说,这道题有两种方法,第一种是另建一个链表,另一种方法是头插法,我不是用第一种方法做的,这里我只把逆置的那部分代码贴出来,其余的自己写。

 

struct node *know( struct node *head, int n )
{
struct node *pt, *p1,*pt2;
 
p1 = head;
pt2 = head = NULL;
 
while( p1 )
{
pt = p1;
p1 = p1->next; //p1控制移动
pt->next = pt2;
pt2 = pt;
}
 
return pt;
}

 

发表评论

电子邮件地址不会被公开。

Post Navigation