您的位置:首页 > 其它

《链表》之判断两链表是否相交/交点

2015-04-19 11:37 141 查看


(1)判断是否相交(都无环)

方法1:如果两链表相交,指向最后一个结点的指针内容必然相同

方法2:h1的尾部连接h2的首部,如果h2结成了环,那么必然相交。

关键点在最后一个结点上。

(2)求交点(都无环,否则长度无法计算)

第1步:先分别求得的两链表的长度,计算出长链表比短链表多(lengthMax-lengthMin)步。

第2步:长短链表处各放一个指针,长链表指针先行(lengthMax-lengthMin)步,然后两指针同步走,相遇的第1点即为两链表交点。

(3)判断是否相交(可能有环)

方法:链表1 步长为1, 链表2步长为2 ,如果有环且相交则肯定相遇,否则不相交
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐