给定一个单链表,如何从指定节点(例如节点 4)确定头节点。节点总数:10。谢谢。逻辑会做,代码表示赞赏。
我们知道给定一个头节点,可以轻松执行前向遍历并确定下一个节点。
对于这种情况,使用双链表会更简单,但我想知道是否可以使用单链表来追踪头节点。谢谢。
给定一个单链表,如何从指定节点(例如节点 4)确定头节点。节点总数:10。谢谢。逻辑会做,代码表示赞赏。
我们知道给定一个头节点,可以轻松执行前向遍历并确定下一个节点。
对于这种情况,使用双链表会更简单,但我想知道是否可以使用单链表来追踪头节点。谢谢。
使用您描述的那种单链表根本不可能做到这一点。
你的问题并不完全清楚。但唯一可行的方法是,如果您的每个候选人都是唯一列表的负责人,其中一个就是您所追求的负责人。
对于每个候选人,遍历从它开始的列表。你最终会打到相应的尾巴,或者你会打到有问题的节点。
即使您的一组候选人并非都是唯一列表的负责人,您也可以完成这项工作。但是您需要逻辑来检测重叠。
你根本不能在单链表中。
来自维基百科:
单链表包含具有数据字段和“下一个”字段的节点,该字段指向节点行中的下一个节点。
您无法返回上一个节点,因为您没有任何关于它的信息。如果给你一个单链表的任何随机节点,head
你的新列表将是那个节点,因为你不能再往回走。