假设您在Java中有一个链表结构。它由节点组成: class Node { Node next; // some user data } 每个节点都指向下一个节点,但最后一个节点除外,后者的下一个为空。假设列表有可能包含一个循环-即最终节点(而不是null)具有对列表中位于其之前的节点之一的引用。 最好的写作方式是什么 boolean hasLoop(Node first) true如果给定的Node是带有循环的列表的第一个,则将返回false什么,否则返回?您怎么写才能占用恒定的空间和合理的时间? 这是带有循环的列表的图片: