#include<stdio.h>
#include<stdlib.h>
typedef int ElemType;
typedef struct LNode //单链表的存储结构定义
{
ElemType data; //数据域
struct LNode *next; //指针域
}LNode,*LinkList; //*LinkList为LNode类型的指针 LNode *p == LinkList p
enum Status{
ERROR,OK};
LinkList L,r;
Status InitList_L(LinkList &L) //初始化,构造一个空链表
{
L=(LinkList)malloc(sizeof(LNode));
if(L==NULL)
return ERROR;
L->next=NULL;
return OK;
}
Status DestoryList(LinkList &L) //销毁链表
{
LinkList pre=L; //前驱结点
LinkList p=L->next; //当前结点
while(p!=NULL);
{
free(pre);
pre=p;
p=p->next;
}
free(pre); //释放最后一个结点
printf("销毁成功\n");
return OK;
}
Status DestoryList_L(LinkList &L)
{
LinkList p;
while (L)
{
p=L;
L=L->next;
free(p);
}
return OK;
}
Status ClearList(LinkList &L) //将L置为空表
{
LinkList p,q;
p=L->next;
while(p)
{
q=p->next;
free(p);
p=q;
}
L->next=NULL;
return OK;
}
int ListLength(LinkList L) //求表长,返回元素个数
{
LinkList p<
单链表的初始化,销毁,置为空表,求表长,判空,按位查找,按值查找,插入,删除,前插建立,后插建立,打印
最新推荐文章于 2023-07-14 12:25:25 发布
本文深入探讨了单链表的各种操作,包括如何初始化链表,销毁链表,将其置为空表,计算链表长度,判断是否为空,按位置和值进行查找,以及如何进行插入和删除节点。此外,还介绍了前插和后插建立链表的方法以及打印链表的技巧。对于理解和掌握数据结构中的链表操作具有重要意义。

最低0.47元/天 解锁文章
2093

被折叠的 条评论
为什么被折叠?



