typedef struct ListNode listNode;
struct ListNode *getIntersectionNode(struct ListNode *headA, struct ListNode *headB) {
listNode *a = headA, *b = headB;
while (a != b && (a->next != NULL || b->next != NULL)) {
if (a->next == NULL) {
a = headB;
}
else {
a = a->next;
}
if (b->next == NULL) {
b = headA;
}
else {
b = b->next;
}
}
if (a != b) {
return NULL;
}
else {
return a;
}
}
暂无评论