《链表》之判断两链表是否相交/交点
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 ,如果有环且相交则肯定相遇,否则不相交
相关文章推荐
- 链表逆序、判断是否有环、求环的起点;两个链表是否相交、交点
- <笔试><面试>C/C++单链表相关(4)判断两链表是否相交,求交点(链表不带环/可能带环)
- 判断两个链表是否相交并找出交点
- 判断两个链表是否相交,及其第一个公共交点
- 判断两个链表是否相交并找出交点
- 判断两个链表是否相交,若相交,求交点。(假设链表不带环)(C语言)
- 判断两个链表是否相交并找出交点
- 判断两个链表是否相交,若相交,求交点。(假设链表可能带环)【升级版】(C语言)
- 【算法之链表(二)】判断两个链表是否相交并找出交点
- 判断两个链表是否相交并找出交点
- 如何判断两个链表是否相交,以及交点
- 判断两个链表是否相交,若相交,求交点。
- 判断两个链表是否相交,若相交,求交点,考虑带环情况实现代码
- 判断两个链表是否相交,若相交,求第一个交点
- 数据结构和算法设计专题之---判断两个链表是否相交并找出交点
- 判断两个链表是否相交并找出交点
- 判断两个链表是否相交,若相交,求交点:1.不带环。2.有可能带环
- <笔试><面试>C/C++单链表相关(4)判断两链表是否相交,求交点(链表不带环/可能带环)
- 每日一刷——1.判断两个链表是否相交,若相交求交点(链表不带环&带环)2.fork()问题
- 常见链表面试题之判断链表是否相交,并求交点