这一段是别人发的,但是我不太理解每一行的意思,有没有人帮帮我?
//删除算法(对用户输入的数进行删除)
Linklist *Delete_link1(Linklist *head,int key)
{
Linklist *p1,*p2;
if(head->data==key)
{
p2=head;
head=head->next;
free(p2);
}
p1=head;
p2=head->next;
while(p2!=NULL)
{
if(p2->data==key)
{
p1->next=p2->next;
free(p2);
p2=p1->next;
}
else
{
p1=p2;
p2=p2->next;
}
}
return head;
}