/*
public class ListNode
{
public int val;
public ListNode next;
public ListNode (int x)
{
val = x;
}
}*/
class Solution {
public ListNode FindFirstCommonNode(ListNode pHead1, ListNode pHead2) {
ListNode pa = pHead1;
ListNode pb = pHead2;
if (pa == null || pb == null) return null;
int times = 0;
while (true) {
if (pa == pb) return pa;
pa = pa.next;
pb = pb.next;
if (pa == null) {
if (times == 2) return null;
pa = pHead2;
times++;
}
if (pb == null) {
if (times == 2) return null;
pb = pHead1;
times++;
}
}
}
}