找两个链表的第一个公共节点
这是我在leetcode上刷到的题,为什么相遇了就一定是第一个节点呢,有点想不通
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
struct ListNode *getIntersectionNode(struct ListNode *headA, struct ListNode *headB) {
int i,j=0,min,count=0,count1=0;
struct ListNode *p;
struct ListNode *q;
p=headA;
q=headB;
if(p==NULL||q==NULL)
return NULL;
while(p!=q)
{
p=p?p->next:headB;
q=q?q->next:headA;
}
return p;
}