【链表】链表中环的入口结点
题目:
给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。
解答:
设置一个HashSet来存储访问过的节点的引用。当第一次再访问到HashSet中的元素时,就找到了环的入口。
/* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } } */ import java.util.HashSet; import java.util.Set; public class Solution { public ListNode EntryNodeOfLoop(ListNode pHead) { Set<ListNode> set = new HashSet<>(); ListNode p = pHead; while(p!=null){ if(!set.contains(p)) set.add(p); else return p; p = p.next; } return null; } }

浙公网安备 33010602011771号