LeetCode题解之Intersection of Two Linked Lists

Posted 山里的小勇子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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     }

 

以上是关于LeetCode题解之Intersection of Two Linked Lists的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode Intersection of Two Linked Lists

[LeetCode] Intersection of Two Arrays II 两个数组相交之二

leetcode题解之35. 搜索插入位置

Leetcode题解——数据结构之哈希表

[LeetCode] 160. Intersection of Two Linked Lists

leetcode题解之Find the Duplicate Number