Problem4588--相交链表

4588: 相交链表

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

编写一个程序,找到两个单链表相交的起始节点。如果两个链表有相交的数据,输出所有相交的数据。如果两个链表没有相交的数据,输出null。
如下面的两个链表:

在节点 c1 开始相交。

Input

共三行。
第一行,两个数据m和n,数据之间用空格隔开。m表示链表A的数据数量,n表示链表B的数据数量。数据可能无限大。
第二行为m个数据,每个数据之间用空格隔开。表示链表A的所有数据。数据大小在int表示范围内。
第三行为n个数据,每个数据之间用空格隔开。表示链表B的所有数据。数据大小在int表示范围内。

Output

一行,k个数据,每个数据之间用空格隔开。表示链表A和链表B相交的部分数据。

Sample 1 Input

5 6
4 1 8 4 5
5 0 1 8 4 5

Sample 1 Output

8 4 5

HINT

【样例一数据说明】
输入:
ListNodeA:4, 1, 8, 4, 5
ListNodeB: 5, 0, 1, 8, 4, 5
输出:
8 4 5
解释:
相交节点的值为8(注意,如果两个链表相交则不能为0)。从各自的表头开始,链表A为[4, 1, 8, 4, 5],链表B为[5, 0, 1, 8, 4, 5]。在A中,相交节点前有2个节点;在B中,相交节点前有3个节点。

Source/Category

数据结构 2.1.链表