import java.util.*; public class Solution { public boolean hasCycle(ListNode head) { ListNode pos = head; // 哈希表记录访问过的结点 Set visited = new HashSet(); while (pos != null) { // 判断结点是否被访问 if (visited.contains(pos)) { return true; } else { // 结点记录添加到哈希表中 visited.add(pos); } // 遍历 pos = pos.next; } return false; } }