数据结构(单链表)

上传人:wt****50 文档编号:33773487 上传时间:2018-02-17 格式:DOC 页数:8 大小:36.50KB
返回 下载 相关 举报
数据结构(单链表)_第1页
第1页 / 共8页
数据结构(单链表)_第2页
第2页 / 共8页
数据结构(单链表)_第3页
第3页 / 共8页
数据结构(单链表)_第4页
第4页 / 共8页
数据结构(单链表)_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《数据结构(单链表)》由会员分享,可在线阅读,更多相关《数据结构(单链表)(8页珍藏版)》请在金锄头文库上搜索。

1、/头文件 list.h#includestdlib.h#includestdio.htypedef char EleType;typedef struct nodeEleType data;struct node * next;ChainNode;typedef structChainNode * head;List;List * CreatList();ChainNode * NewChainNode(EleType data);List * NodeAppend(List * lp,EleType data);ChainNode * GetAddr(List * lp,int n);Lis

2、t * NodeDelete(List * lp,int n);List * NodeAdd(List * lp,int n,EleType data);List * CreatList()List * lp;ChainNode * p;EleType data=0;lp=(List *)malloc(sizeof(List);if(!lp) return 0;p=NewChainNode(data);if(!p) return 0;lp-head=p;return lp;ChainNode * NewChainNode(EleType data)ChainNode * p;p=(ChainN

3、ode *)malloc(sizeof(ChainNode);if(!p) return 0;p-data=data;p-next=0;return p;List * NodeAppend(List * lp,EleType data)ChainNode * p;ChainNode * p1;p1=NewChainNode(data);if(!p1) return 0;p=lp-head;for(p;p-next;p=p-next);p-next=p1;return lp;ChainNode * GetAddr(List * lp,int n)ChainNode * p;if(nhead;in

4、t a;for(a=0;anext;return p;List * NodeDelete(List * lp,int n)ChainNode * p;ChainNode * p1;p=GetAddr(lp,n-1);if(!p) return 0;p1=p-next;p-next=p1-next;free(p1);return lp;List * NodeAdd(List * lp,int n,EleType data)ChainNode * p;ChainNode * p1;p1=NewChainNode(data);if(!p1) return 0;p=GetAddr(lp,n-1);if

5、(!p) return 0;p1-next=p-next;p-next=p1;return lp;/测试函数#includelist.hEleType arr=Hello world!;void showlist(List * lp);void main()int i;List * lp;lp=CreatList();if(!lp) printf(CreatList failed!);for(i=0;arri;i+)NodeAppend(lp,arri);showlist(lp);NodeDelete(lp,1);showlist(lp);NodeAdd(lp,1,H);showlist(lp);void showlist(List * lp)ChainNode * p;p=lp-head;for(p=p-next;p;p=p-next)printf(%c,p-data);printf(n);

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 文化创意

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号