c++ - 指针前后,C++中的双向链表

标签 c++ pointers insertion doubly-linked-list

有人熟悉在 C++ 中使用带有两个虚拟节点的双向链表时的 before* 和 after* 指针吗?我正在尝试使用 before* 和 after* 作为我的迭代器来解释所有插入的特殊情况(空列表、在最前面插入、在最后面插入、在中间插入)。

如何正确使用before*和after*来判断插入位置?

非常感谢任何反馈。提前致谢。

最佳答案

有两个虚拟节点,没有特殊情况。由于前面总是有一个虚拟节点,最后有一个虚拟节点,因此您永远不会对空列表进行操作。您从不在最前面插入。你永远不会在最后面插入。所有的插入和删除都在中间——这是两个哨兵节点的点。

关于c++ - 指针前后,C++中的双向链表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15081595/

相关文章:

c++ - 创建 STL - 恒等映射的最简单方法是什么?

c++ - 如何使用 'using' 指令分割循环依赖

c++ - 使用 OpenCL 2.0 C++ 绑定(bind)头文件的链接器错误

c - 我应该如何将此整数数组传递给这个函数?

c - C 中带有指针的这些 volatile 是什么意思?

c++ - 在 cpp 应用程序中保存密码

function - 如何在 Fortran 中给函数名起别名

algorithm - 插入、删除和替换有什么区别

java - 插入后如何在链表中的节点之间建立连接

sql - 插入异常的特异性