leescode-160-相交链表

思路:

1.两个链表都是单链表,所以不存在环的情况

2.将两个链表的头分别开始遍历,一个链表遍历完后又遍历另一个链表,如果有相交,两次遍历必然会得到相交节点。

 

代码:

/**  * Definition for singly-linked list.  * struct ListNode {  *     int val;  *     ListNode *next;  *     ListNode(int x) : val(x), next(NULL) {}  * };  */ class Solution { public:     ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) {         auto p=headA,q=headB;         while(p!=q)         {             if(p) p=p->next;             else p=headB;             if(q) q=q->next;             else q=headA;         }         return p;     } };

 

上一篇:CSS3(三) 3D 转换


下一篇:LeetCode 160. 相交链表