题解 | #两个链表的第一个公共结点#
两个链表的第一个公共结点
https://www.nowcoder.com/practice/6ab1d9a29e88450685099d45c9e31e46
/* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } };*/ class Solution { public: ListNode* FindFirstCommonNode( ListNode* pHead1, ListNode* pHead2) { ListNode * p1; ListNode * p2; p1=pHead1; p2=pHead2; ListNode * h1=(ListNode*)malloc(sizeof(ListNode)); ListNode * h2=(ListNode*)malloc(sizeof(ListNode)); h1->next=p1; h2->next=p2; p1=h1; p2=h2; //ListNode * h2=(ListNode*)malloc(sizeof(ListNode)); //if(p1==NULL || p2==NULL)return NULL; while(p1!=p2) { if(p1==NULL) { p1=h2; } if(p2==NULL) { p2=h1; } p1=p1->next; p2=p2->next; } return p1; } };