list模拟实现

list的核心成员

一个指向哨兵头结点的指针,一个有效节点个数。其底层为带头双向循环链表,其链表节点有三个成员,其中一个值,是数据域,两个指针一前一后,是指针域

list的核心成员函数

构造函数:

默认构造,list中只有一个哨兵头结点,有效节点个数为零

填充构造,除哨兵头结点外还有n个有效节点,并赋值为val

拷贝构造,进行深拷贝

begin

返回第一个有效节点的迭代器

end

返回最后一个有效节点的下一个位置的迭代器,其实就是指向哨兵节点,因为是list是循环链表

size

返回有效节点个数

front

返回第一个有效节点里面的值的引用

back

返回最后一个有效节点里面值的引用

push_front

头插

pop_front

头删

push_back

尾插

pop_back

尾删

insert

在迭代器位置插入节点,返回插入节点的迭代器

erase

删除迭代器指向的节点,然后返回删除结点的下一个位置的迭代器

clear

清理有效节点

swap

交换两个list

list模拟实现

list模拟

相关推荐
稚南城才子,乌衣巷风流27 分钟前
动态树(Dynamic Tree)数据结构详解
数据结构·算法
zander2581 小时前
114. 二叉树展开为链表
数据结构·链表·深度优先
小肝一下2 小时前
3. 单链表
c语言·数据结构·c++·算法·leetcode·链表·dijkstra
tachibana22 小时前
hot100 前 K 个高频元素(347)
java·数据结构·算法·leetcode
2301_768103492 小时前
HarmonyOS趣味相机实战第31篇:图片文档List、详情弹层与删除状态闭环
list·harmonyos·arkts·状态管理·arkui
延凡科技15 小时前
多场景落地复盘:端边云架构无人机智能巡检系统设计与实践
大数据·数据结构·人工智能·科技·架构·无人机·能源
皓月斯语21 小时前
B3842 [GESP202306 三级] 春游 题解
数据结构·c++·算法·题解
春日见21 小时前
算法与数据结构----哈希表
数据结构·人工智能·算法·机器学习·自动驾驶·哈希算法·散列表
萌动的小火苗1 天前
嵌入式开发中的栈与队列:任务调度为什么依赖数据结构
数据结构·c++·单片机·嵌入式硬件
叩码以求索1 天前
统计按位或能得到最大值的子集数目(一)
数据结构·算法