什么是单链表:
文字说明:
单链表顾名思义,就是指单项链表,即只有一个方向的链性线性表。
图解:
如下图所示,即为链表(DATA为我们自己所定义的数据类型):
单链表的创建(创建后使用前必须对其初始化):
文字描述:
单链表分为两个部分:
(1)数据部分(通过自定义即可,下方代码为结构体DATA)
(2)指向部分(通过指针来实现)
代码:
typedef struct LNode
{
DATA data;
struct LNode* next;
};
单链表的初始化:
文字说明:
链表初始化的过程与我们的动态顺序表的初始化相近,只不过在给其初始化时除了给链表开辟空间,同时要使其 next 的指针指向NULL(空节点)。
代码:
void creat(LNode*& L)
{
L = (LNode*)malloc(sizeof(LNode));
L->next = NULL;
}
单链表的基本操作:
查看链表的长度:
文字解释:
遍历整个链表,每到一个节点就加一,当到下一个节点指向NULL停止。
代码:
int Len(LNode* L)
{
int length = 0;
LNode* p;
p = L->next;
while (p != NULL)
{
length++;
p = p->next;
}
return length;
}
其余用法与链表的长度判断相近,再此不过多解释。