给出一个单链表,如何从指定节点(例如节点4)确定头节点。总节点数:10.谢谢。逻辑将做,代码表示赞赏。
我们知道给定一个头节点可以执行正向遍历并轻松确定下一个节点。
对于这种情况,使用双向链表会更简单,但我想知道是否可以使用单链表来追踪头节点。谢谢。
答案 0 :(得分:3)
根据你所描述的那种单链表,完全不可能做到这一点。
答案 1 :(得分:0)
你的问题并不完全清楚。但唯一可行的方法是,如果你的每个候选人都是一个独特的名单的负责人,其中一个是你所追求的头脑。
对于每个候选人,遍历从其开始的列表。你最终将击中相应的尾部,否则你将击中相关节点。
即使你的候选人不是所有独特名单的负责人,你也可以使这项工作成功。但是你需要逻辑来检测重叠。
答案 2 :(得分:0)
你根本无法进入单链表。
来自维基百科:
单链表包含具有数据字段和a的节点 '下一个' field,指向节点行中的下一个节点。
由于您没有任何相关信息,因此无法返回上一个节点。如果您获得了单个链接列表的任何随机节点,则新列表的head
将成为该节点,因为您无法继续返回。