数据结构与算法-ch2LinearList.ppt

删除结点示意图4. 线性表基本运算实现(1) 初始化线性表InitList(L)该运算建立一个空的单链表,即创建一个头结点。void InitList(LinkList *L){ L=(LinkList *)malloc(sizeof(LinkList)); /*创建头结点*/ L-next=NULL;}(2) 销毁线性表DestroyList(L)释放单链表L占用的内存空间。即逐一释放全部结点的空间。void DestroyList(LinkList *L){ LinkList *p=L,*q=p-next; while (q!=NULL) {free(p);p=q;q=p-next; } free(p);}(3) 判线性表是否为空表ListEmpty(L)若单链表L没有数据结点,则返回真,否则返回假。int ListEmpty(LinkList *L){ return(L-next==NULL);}(4) 求线性表的长度ListLength(L)返回单链表L中数据结点的个数。int ListLength(LinkList *L){ LinkList *p=L;int i=0; while (p-next!=NULL) {i++;p=p-next; } return(i);}(5) 输出线性表DispList(L)逐一扫描单链表L的每个数据结

文档评论(0)

1亿VIP精品文档

相关文档