一句话:list底层实现一个双向循环链表
一、list底层实现
一个双向循环链表
二、类构成
- class list : protected_List_base
- _list_base.lsit_impl.list_node
_M_storage存储具体值
_M_next指向下一个结点
_M_prev指向上一个结点
三、构造函数
- 不管怎么构造,初始都会构建一个空结点
- 空节点用来表示整个双向循环链表
四、迭代器
++往下移动指针 - - 向上移动指针
五、获取第一个元素
空结点的下一个结点
六、获取最后一个元素
空结点的上一个结点
七、插入元素
每插入一个元素,都临时为该结点分配内存
推荐一个零声学院项目课,个人觉得老师讲得不错,分享给大家:
零声白金学习卡(含基础架构/高性能存储/golang云原生/音视频/Linux内核)
https://xxetb.xet.tech/s/VsFMs