LeetCode题解之Intersection of Two Linked Lists

1、题目描述

2、问题分析

使用unordered_set 将链表A中的节点地址全部插入,然后使用链表B中的每个节点在A中查找。

3、代码

 1 ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) {
 2         
 3         if( headA == NULL || headB == NULL )
 4             return NULL;
 5         ListNode* pa = headA;
 6         ListNode* pb = headB;
 7         unordered_set<ListNode*> s;
 8         while( pa != NULL )
 9         {
10             s.insert(pa);
11             pa = pa->next;
12         }
13         
14         while( pb != NULL )
15         {
16             if( s.find( pb )  != s.end() )
17                 return pb;
18             pb = pb->next;
19         }
20         return NULL;
21     }
pp
原文地址:https://www.cnblogs.com/wangxiaoyong/p/9290142.html