这篇文章主要介绍了C语言中单链表的基本操作(创建、销毁、增删查改等),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
链表分类
链表主要有下面三种分类方法:
- 单向或者双向
- 带头或者不带头
- 循环或者非循环综合来看链表有八种类型,本文主要针对的是不带头节点的非循环单链表。
单链表的介绍
typedef struct SListNode { DataType data;//数据域 struct SListNode *next;//结构体指针,指向下一个节点 }SListNode;//类型别名
如图
链表的每一个节点由数据域和指针域构成,数据域存放数据,指针域中的指针指向下一个节点。
plist表示链表的指针,指向链表的第一个节点,最后一个节点的指针为空。
单链表的基本操作
创建
创建单链表有几点需注意:
- 链表与顺序表的区别是,顺序表是物理空间上连续的,而链表只在逻辑上连续,所以链表申请空间时是使用一个申请一个,