用两个指针 p1,p2 分别指向两个链表的头结点 headA,headB ,同时向后遍历。 当其中一个指针到达该指针所指链表末尾(NULL)时,重新将这个指针定位到另一个链表的头结点。(两个指针交替进行一次同样的操作) 当它们相遇时,所指向的结点就是第一个公共结点。 图示解释 设A链表的非公共部分长度为LA,B链表的非公共部分长度为LB,公共部分长度为C。 A链表总长度为LA + C,B链表总长度为LB + C。 当指针按照题解方式走下去,p1第二次走到公共节点的时候,走过的长度为LA + C + LB,p2第二次走到公共节点的时候,走过的长度为LB + C + LA。p1 和 p2走过的...