Write a program to find the node at which the intersection of two singly linked lists begins.
For example, the following two linked lists:
A: a1 → a2
↘
c1 → c2 → c3
↗
B: b1 → b2 → b3
begin to intersect at node c1.
Notes:
- If the two linked lists have no intersection at all, return
null. - The linked lists must retain their original structure after the function returns.
- You may assume there are no cycles anywhere in the entire linked structure.
- Your code should preferably run in O(n) time and use only O(1) memory.
原文链接http://blog.youkuaiyun.com/crazy__chen/article/details/46383675
本文介绍了一种在两个单链表中找到它们开始相交节点的方法。通过计算两个链表的长度并调整较长链表的起始位置,使得两链表剩余部分长度相等,然后同时遍历两个链表直至找到相同的节点。
805

被折叠的 条评论
为什么被折叠?



