- typedef int ElemType;
- typedef struct node{
- ElemType data; /*数据域*/
- struct node *next; /*指针域*/
- }LNode,*LinkList;
- LinkList GreatLinkList(int n){
- LinkList p,r,list=NULL;
- ElemType e;
- int i;
- for(i=1;i<=n;i++){
- scanf("%d",&e);
- p=(LinkList)malloc(sizeof(LNode));
- p->data=e;
- p->next=NULL;
- if(!list)
- list=p;
- else
- r->next=p;
- r=p;
- }
- return list;
- }
- void insertList(LinkList *list,LinkList q,ElemType e){
- LinkList p;
- p=( LinkList)malloc(sizeof(LNode));
- p->data=e;
- if(!*list){
- *list=p;
- p->next=NULL;
- }
- else{
- p->next=q->next;
- q->next=p;
- }
- }
- void delLink(LinkList *list ,LinkList q){
- LinkList r;
- if(q==list){
- *list=q->next;
- free(q);
- }
- else{
- for(r=*list;r->next!=q;r=r->next);
- if(r->next!=NULL){
- r->next=q->next;
- free(q);
- }
- }
- }
- void destroyLinkList(LinkList *list){
- LinkList p,q;
- p=*list;
- while(p){
- q=p->next;
- free(p);
- p=q;
- }
- *list=NULL;
- }
- //该片段来自于http://www.codesnippet.cn/detail/3112201411452.html
来源: http://www.codesnippet.cn/detail/3112201411452.html