[互联网面试笔试汇总C/C++-8] 寻找两个链表的第一个交点-微策略

题目:有两个链表,找出他们的第一个交点,要求每个链表只能遍历一次,可以对链表进行任何操作,空间O(1).


思路:

这个题目刚开始看觉得要遍历一次有点困难,但是仔细一想,人家告诉说可以对链表进行任何操作,这是一个没有用到的条件(大家一定要注意到题目中没有用到的条件,往往是解题的关键所在)。

于是乎,方法如下:

1.遍历第一个链表List1,将每一个节点的next都置为NULL。

2.遍历第二个链表List2,List2的尾节点就是第一个交点。

你可能感兴趣的:(面试,链表,遍历,微策略)