链表:顺序表、单链表、循环链表、双向链表

本文详细介绍了链表的各种类型,包括顺序表、单链表、循环链表和双向链表。线性表的顺序表示通过连续的存储单元存储元素,但插入和删除操作效率较低。链表则提供了更灵活的结构,单链表插入和删除操作的时间复杂度为O(1),循环链表允许从任意节点开始遍历,而双向链表则支持双向遍历。文章还探讨了各种链表操作的实现细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

内部结点唯一的前驱和后继,表头 只有后继,表尾只有前驱。

1、线性结构

线性表:顺序表(数组)、链表

栈:插入和删除都限制在表的同一端进行(后入先出)

队列:插入在一端,删除在另一端(先进先出)

//线性表类模板如下,是顺序表类和链表类的基类,用虚函数virtual
template <class T>
//value的类型是T
class LinearList
{
	virtual void clear() const=0;//置空线性表
	virtual bool isEmpty() const=0;//线性表为空时,返回true
	//增
	virtual bool append(const T value)=0;//表尾添加一个元素value
	virtual bool insert(const int p, const T value)=0;//位置p上插入元素value
	//删
	virtual bool delete(c
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值