您的位置: 题酷首页 » 所有题目 » 面试题之链表问题 - 如何判断两个链表是否交叉


面试题之链表问题 - 如何判断两个链表是否交叉


0
0
2 答
941 看

给定两个单链表:

  1. 如何判断单链表是否交叉?
  2. 如何找出出交叉在哪里?
  3. 如果可能有环呢?
面试题链表
2009/08/18 by 半瓶墨水 6个月前更新 更新记录



1

第二题 2个链表如果都没有环的话,就分别遍历到底 得到第一个长度为m, 第二个长度为n 我们假定m>n;那我们就假定k=m-n;(k>0) 我们开始第三次遍历 从第一个链表的第k+1个节点开始,第二个链表的第1个开始,同时遍历,如果遍历到的2个节点相等, 那么就找到那个交点了。

Beautiful!半瓶墨水, 6个月前
0

这个是南京摩托罗拉的面试题?

  1. 分别遍历两个单链表至尾部,如果尾指针相等那么就交叉,画个图就很好理解的。
  2. 两重循环遍历,貌似这个效率低了点,应该有更好的办法,待高手指点。
  3. 没看明白,既然都是单链表应该是不会有环的。
2 要想搞成1/2/3需要需要"1. "这样开头。关于3,单链表也可以有环的-尾部连到中间就行了。第2个确实有更快的方案,而且也不难做。半瓶墨水, 7个月前
说说看更优的方案是什么Ge Chunyuan, 6个月前
@Ge Chunyuan: 呵呵,你自己不是写过了吗?半瓶墨水, 6个月前

250x

参与回答

 提示:如不是回答问题,请采用发表评论形式! (比如针对题目或者某个回复的意见、建议)

注册登录后再回答