Appearance
链表相交
给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。
图示两个链表在节点 c1 开始相交:
题目数据 保证 整个链式结构中不存在环。
注意,函数返回结果后,链表必须 保持其原始结构 。
示例 1:
示例 2:
示例 3:
思路
- 用两个指针,分别遍历两个链表两次,一个指针从链表1开始,另一个指针从链表2开始,当走到null时,切换到另外一个链表头继续遍历。到最后如果能走到同个结点,说明存在相交结点。
- 先获取两个链表的长度,先遍历掉多的部分,再两个链表同时遍历,看是否能找到相交结点。
代码
双指针