【C语言】---单链表的实现

链表的分类

链表的结构非常多样,以下情况组合起来就有8中结构
其中我们常用的有两种:
1.不带头单向不循环链表
2.带头双向循环链表
其中这个头指的是“哨兵位”,这个我在下一篇博客会将,这篇博客讲的是不带头单向不循环链表。
在这里插入图片描述

单链表的概念和结构

单链表和顺序表一样也是一种线性表
两者也有很多不同,具体如下:
在这里插入图片描述
链表在物理上不是连续的,但在逻辑上是连续的。这句话的意思是链表中的节点在内存中不是连续存储的,而是随机存储的,但每个节点之间又有某种联系使得能找到彼此。
我们可以把链表当成火车:
在这里插入图片描述
单链表的逻辑如下:
plist是“哨兵位”,我们暂且不看
在这里插入图片描述

功能代码实现

功能我直接给代码给你们看,第一次学看不懂是正常的,要自己自行画图并结合代码进行理解。不会画的欢迎随时留言或者私信小编,小编看到会及时回复(小编非常平易近人的)

单链表结构的定义

结构中有两个元素,一个是节点的值,一个是直线下一个节点的地址的指针next
在这里插入图片描述

要实现的功能和所需的头文件

在这里插入图片描述
在这里插入图片描述

链表的尾插

尾插之前我们需要先初始化一下,给个NULL表示当前链表是空链表
在这里插入图片描述
以下是尾插代码:
在这里插入图片描述
尾插之前我们需要先申请一个空间,申请空间的代码如下:
在这里插入图片描述

链表的头插

代码如下:
在这里插入图片描述

链表的尾删

在这里插入图片描述

链表的头删

在这里插入图片描述

查找链表节点

在这里插入图片描述

在链表pos节点之前插入节点

在这里插入图片描述

在链表的pos节点之后插入节点

在这里插入图片描述

删除pos节点

在这里插入图片描述

删除pos节点之后的节点

在这里插入图片描述

打印链表中的元素

在这里插入图片描述

销毁链表

在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值