1、链表的概念和特点
链表是由若干结点组成,每个结点至少包括两部分信息:一个是元素数据,一个是指向下一个(上一个)元素地址的指针。链表的存储在物理上是非连续、非顺序的存储结构,数据元素之间是通过每个元素的指针来关联的。
与数组相比,链表独特的存储结构克服了数组提前需要设置长度的缺点,在运行时可以动态的快速的添加和删除元素;计算机的存储空间并非连续的,而链表则可以灵活的使用存储空间,能更好的对计算机内存进行动态管理。
链表分为单链表、双链表、和循环链表,双链表的每个结点有两个指针,分别指向前一个元素和后一个元素,循环链表的尾结点指针不是null,而是指向头结点元素的地址。
2、链表的操作
链表的操作包括了创建、删除、插入、输出。
创建就是空间的分配,将头、尾指针及链表结点个数等初始化。
删除和插入根据被操作元素的位置可以细分为头删除(插入),尾删除(插入),中间删除(插入