创建和销毁链表
1,创建链表 NODE *Creat_LinkList(int number)
算法:创建一个长为number的链表,返回链表头部head指针。每次在链表尾部加节点。
NODE *head = (NODE*)malloc(sizeof(NODE));
head->next=NULL; //建立头节点
NODE *q=head;
while(根据number判断)
{
NODE *pnew = (NODE*)malloc(sizeof(NODE));
pnew->data=Data; //节点数据域赋值
pnew->next=NULL; //从节点尾部加节点
q->next = pnew;
q=q->next;
}
代码:
2,销毁链表 int Free_LinkList(NODE *head)
算法:从头节点开始,依次free
NODE *p,*q;
p=head
while(p->next!=NULL)
{
q=p->next;
p->next=q->next;
p=q->next;
free(q);
}
free(head);
代码: