import java.util.*;

/* public class ListNode { int val; ListNode next = null;

ListNode(int val) {
    this.val = val;
}

} */

//注意:只要是判断链表公共节点的,都可以使用这个方法!!!

//将链表节点放在Set集合中,判断节点是否包含在Set集合中来找到公共节点。

public class Solution {

public ListNode EntryNodeOfLoop(ListNode pHead) {
    Set<ListNode> se = new HashSet<>();
        while(pHead!=null){
            if(se.contains(pHead)){
                return pHead;
            }
            se.add(pHead);
            pHead=pHead.next;
        }
    return null;
    }
    

}