前言
大家好,我是Abert。
这篇文章和大家分享用C语言实现数据结构中的单链表。
单链表可以看作是“拆分开”的顺序表。在顺序表的基础上,单链表做了一些优化,但同时也丧失了一些顺序表有的功能。
我们一起来学习单链表吧!!!
文章目录
一、单链表的讲解
二、程序基本框架的搭建与讲解
2.1 文件的创建
2.2 变量的创建
三、各种功能的实现及逻辑关系的讲解
3.1 尾插
3.2 头插
3.3 尾删
3.4 头删
3.5 查询
3.6 在pos位置之前插入
3.7 删除pos位置的值
3.8 在pos位置之后插入x
3.9 删除pos之后的值
四、完整代码
4.1 SLlist.h
4.2 SLlist.c
4.3 test.c
五、优缺点的分析
正文
一、单链表的讲解
上图可以看作是单链表的一个简单结构,多个节点链接起来(实际在内存中的存储可能不是这样的一条规则的链)
链表插入数据不会像顺序表一样一次开辟很多空间,插入一个类型的数据,开辟一个节点,通过改变指针的指向来把新数据与原数据串接起来,如下图
同理,单链表删除数据也只需要改变指针的指向的空间,然后free掉要删除的空间。
如下图:
二、程序基本框架的搭建与讲解
2.1 文件的创建
该项目要创建三个文件。
头文件 SLl