获取单个非循环链表中指针后面节点的值
get value of node behind the pointer in a singly non circular linkedlist
问题:Linkedlist=a、b、c、d、e=节点1、节点2、节点3、节点4、节点5
我在第5个节点上,想得到第2个节点的值(值=b
(。我遍历并没有保存第二个节点的值。现在我在第五节点。无法返回或重新开始。
我有什么办法?
它是一个c++singly non-circular linked list
,其中I不能返回或在圆形方向上移动,节点1,2,3,4,5
如果我在节点5上,我可以将第二个节点作为尾部(我以前在尾部=5(吗?(<-我能在5号的时候不后退或前进吗?我只想通过任何方式得到第二个节点的值。我在想,我可以把第五名放在第二名之后,或者把第二名放在第一名之后。然后向前走一步。(因为我可以前进,但不能后退(。然后得到第二个节点的值。
如果我知道有5个元素。我不能把b
元素做成尾巴吗。此时,我将在第四个e
(它将不再是尾部(,然后我可以前进到第五个元素b
(直到我使第二个元素变成第五个元件时才出现(
这通常是不可能的,因为单链接的非圆形列表,根据定义,没有返回指针。查找第二个元素的唯一可靠方法是从第一个元素开始。
坏消息是你什么都做不了。游戏结束了。这就像在国际象棋中问,当你已经被将死时,最好的招式是什么。
好消息是,无论你做什么编程任务(好吧,只要它可以通过图灵机器解决(,都有一种方法可以对它进行编码,以防止你得到这样的位置。
记住第二个元素,或者记住根,然后你就可以访问它。有些算法会记住最近的(以前的(元素,例如,这就是你从单个链表中删除节点的方法。
相关文章:
- 函数无法识别我在C++传递节点指针向量?
- 交换树数据结构中根的 2 个子节点指针
- 如何将链表的节点直接链接到节点指针
- 在我的C++链表实现中取消引用节点指针,给出意想不到的结果
- 如何删除节点指针
- 节点指针内的指针
- 无法返回节点指针
- 如何使运算符++继续到链表中的下一个节点指针
- 使用模板返回节点指针
- 霍夫曼树中的左节点和右节点指针不指向任何内容
- 使用节点指针数组来指向节点的子节点
- 用C++在树中分配节点指针
- C++分配节点指针
- 如何将节点指针添加到矢量指针
- 创建节点指针数组
- C++:无法在ostream和运算符<<中创建节点指针
- 函数返回节点指针
- 序遍历的二叉搜索树,没有节点指针作为参数
- c++中仅使用节点指针的反向链表
- 列表节点指针"未在此范围内声明"?