import java.util.*;
/*
public class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
}
*/
public class Solution {
public ListNode EntryNodeOfLoop(ListNode pHead) {
if(pHead== null){
return null;
}
//思路:遍历链表,然后将链表放入一个容器中,找到第一个重复的节点就是要找的
ListNode listNode = pHead;
Set<ListNode> set = new HashSet<>();
while(listNode!=null){
if(set.contains(listNode)){
return listNode;
}else{
set.add(listNode);
listNode = listNode.next;
}
}
return null;
}
}


京公网安备 11010502036488号