两个单向链表(表长不等)后半部分重合,怎么找到开始重合的那个节点?
用最简单的方法
提示是:列方程!!!
我的解法
1.遍历A链表 -> a+x=lenA a是第一个相同节点之前的节点个数 x是公共节点个数
2.遍历B链表 同时反转B链表 -> b+x=lenB
3.再遍历A链表 -> a+b+1=lenAB
解方程组 第一个公共节点在 A的a+1位置上 B的b+1位置上
两个单向链表(表长不等)后半部分重合,怎么找到开始重合的那个节点?
用最简单的方法
提示是:列方程!!!
我的解法
1.遍历A链表 -> a+x=lenA a是第一个相同节点之前的节点个数 x是公共节点个数
2.遍历B链表 同时反转B链表 -> b+x=lenB
3.再遍历A链表 -> a+b+1=lenAB
解方程组 第一个公共节点在 A的a+1位置上 B的b+1位置上