c++之链表
目录
概念
分类
单向链表
双向链表
循环链表
单向链表操作
双向链表操作
概念
链表通过指针将一组零散的内存空间关联起来的线性结构,它们的内存地址无须连续。链表是由结点(Node)组成。
数据域:存数据元素
指针域: 存后续结点的内存地址
分类
单向链表
指针域用来连接当前结点和下一结点
data next
头结点是链表中的第一个元素,尾结点指向的是一个空地址NULL
双向链表
指针域有左右(或上一个、下一个)之分,用来连接上一个结点、当前结点、下一个结点。
循环链表
最后一个结点的下一个结点是第一个结点。
单向链表操作
删除p之后的节点s
在p、q之间插入节点s
先把s的下一个指针指向q.next
再把p.next的下一个指针直向那个s。
双向链表操作
删除p结点
在p、q之间插入节点s
链表与数组的区别