《数据结构》之单链表基本操作及C实现
单链表中,每个结点既要存放数据元素,也要存放下一个数据的地址(指针)
结点类型描述
typedef struct LNode{
ElemType data;
struct LNode next;
}LNode,*LList;
单链表(带头结点)的基本操作
1.创建单链表
LList CreateList(LList &L){
L=(LList)malloc(sizeof(LNode));//创建头结点
L->next=NULL;//初始化,防止链表中存在脏数据
LNode* s;//用于创建新结点
LNode *p=L;//尾指针
int x;
scanf("%d",&x);
while(x!=9999){
s=(LNode *)malloc(sizeof(LNode));
s->data=x;
p->next=s;
p=s;//尾指针指向下一个结点
scanf("%d",&x);//输入下一个数据
}
p->next=NULL;
return L;
}
2.按位查找结点数据