剑指offer--两个链表的第一个公共结点
2017-10-24 17:32
274 查看
题目描述
输入两个链表,找出它们的第一个公共结点。代码:
/*
struct ListNode {
int val;
struct ListNode *next;
ListNode(int x) :
val(x), next(NULL) {
}
};*/
class Solution {
public:
ListNode* FindFirstCommonNode( ListNode* pHead1, ListNode* pHead2) {
ListNode *q1=pHead1,*q2=pHead2;
if(!pHead1) return nullptr;
if(!pHead2) return nullptr;
while(q1!=q2){
q1=q1->next;
q2=q2->next;
if(q1==nullptr&&q2!=nullptr) q1=pHead2;
if(q2==nullptr&&q1!=nullptr) q2=pHead1;
if(!q1&&!q2)
return nullptr;
}
return q1;
}
};
相关文章推荐
- 剑指offer 37题 【时间空间效率的平衡】两个链表的第一个公共结点
- 剑指offer——面试题37:两个链表的第一个公共结点
- 剑指Offer--037-两个链表的第一个公共结点
- 剑指offer--面试题37:两个链表的第一个公共结点
- 【剑指Offer学习】【面试题37:两个链表的第一个公共结点】
- 剑指offer——两个链表的第一个公共结点(给出的方法,都是针对有且只有一个公共节点的方法)
- 剑指Offer之 - 两个链表的第一个公共结点
- (C++)剑指offer-36:两个链表的第一个公共结点(时间空间效率的平衡)
- 【剑指Offer-时间效率的平衡】输入两个链表,找出它们的第一个公共结点。
- 【剑指offer】5.3时间效率与空间效率的平衡——面试题37:两个链表的第一个公共结点
- 剑指offer——面试题37:两个链表的第一个公共结点
- [剑指offer]两个链表的第一个公共结点
- 剑指offer 37. 两个链表的第一个公共结点
- 【剑指offer】两个链表的第一个公共结点
- 【剑指offer】面试题37:两个链表的第一个公共结点
- 剑指offer-面试题37-两个链表的第一个公共结点
- 【剑指Offer面试编程题】题目1505:两个链表的第一个公共结点--九度OJ
- 剑指Offer------两个链表的第一个公共结点
- 【剑指offer】面试题37:两个链表的第一个公共结点
- 剑指offer_链表---两个链表的第一个公共结点