aboutsummaryrefslogtreecommitdiff
path: root/intersection_2_linked_list.cpp
blob: 747773405fdd5565ea78badba1da2df98b87b0c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include "leetcode.h"

class Solution {
public:
  ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) {
    ListNode *p1 = headA;
    ListNode *p2 = headB;
    if (p1 == NULL || p2 == NULL)
      return NULL;
    while (p1 != NULL && p2 != NULL && p1 != p2) {
      p1 = p1->next;
      p2 = p2->next;
      if (p1 == p2)
        return p1;
      if (p1 == NULL)
        p1 = headB;
      if (p2 == NULL)
        p2 = headA;
    }
    return p1;
  }
};

int main() {}