剑指Offer刷题(两个链表的第一个公共结点)

    技术2024-08-01  68

    剑指Offer刷题(两个链表的第一个公共结点)

    一.题目描述二.代码(C++)三.提交记录四.备注

    一.题目描述

    输入两个链表,找出它们的第一个公共结点。(注意因为传入数据是链表,所以错误测试数据的提示是用其他方式显示的,保证传入数据是正确的)

    二.代码(C++)

    /* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } };*/ class Solution { public: ListNode* FindFirstCommonNode( ListNode* pHead1, ListNode* pHead2) { ListNode *tmp1=pHead1,*tmp2=pHead2; while(tmp1!=tmp2) { if(tmp1) tmp1 = tmp1->next; else tmp1 = pHead2; if(tmp2) tmp2 = tmp2->next; else tmp2 = pHead1; } return tmp1; } };

    三.提交记录

    四.备注

    双指针,两个链表相连,保证同步前进时能碰到交点。

    Processed: 0.013, SQL: 9