关于链表 插入的几个问题问下,
struct student *inser(struct student *head,struct student *student){
struct student *p0,*p1,*p2;//p0 为要插入的 指针, p2表示什么?
p1=head;
p0=stud;
if(head==NULL)
{
head=p0;
po=next->=NULL;
}
else
{
while((p0->num>pl->num)&&(p1->next!=NULL))
{
p2=p1;
p1=p1->next;//while判断是找到比被插入结点值大的点, 括号里这两句是做什么的,前面不是没有用到p2,这里怎么突然用到了
}
if(p0->num<=p1->num)//这一句是说找到比被插入结点值小的点吧?
{
if(head==p1)
head=p0;
else
p2->next=p0
p0->next=p1;
}
else
{
p1->next=p0;//
p0->next=NULL;
}
n=n+1;
return head;
}
}
[ 本帖最后由 NeQhk 于 2015-1-19 17:29 编辑 ]