我想检查链表的最后一个节点是否指向头节点。这段代码似乎可以解决这个问题,但是对于包含指向非头节点的节点的列表也会给出错误的结果。
我一直在尝试不同的方法,比如在返回true处检查慢节点是否等于头节点,但是似乎不起作用。
有什么建议吗?
我一直在尝试不同的方法,比如在返回true处检查慢节点是否等于头节点,但是似乎不起作用。
public boolean isLinkedToStart(Node head) {
if (head == null) {
return false;
}
Node fast = head.next;
Node slow = head;
while (fast != null && fast.next != null) {
if (fast.next.next == slow) {
return true;
}
fast = fast.next.next;
slow = slow.next;
}
return false;
}
有什么建议吗?