import java.util.*; /* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }*/ public class Solution { public ListNode FindFirstCommonNode(ListNode p1, ListNode p2) { Set<ListNode> set = new HashSet<>(); while(p1 != null){ set.add(p1); p1 = p1.next; } while(p2 != null && ! set.contains(p2)) p2 = p2.next; return p2; } }