遇见YY

导航

 

输入两个链表,找出它们的第一个公共节点。

如图所示两个链表,在节点c1处开始相交:

思路:长链表走到与短链表等长的位置,开始查找相交节点。

public class Solution {
    public ListNode getIntersectionNode(ListNode headA, ListNode headB) {
        if (headA == null || headB == null) return null;
        ListNode node1=headA;
        ListNode node2=headB;
        while (node1!=node2){
//            if (node1==null){
//                node1= headB;
//            }else {
//                node1 = node1.next;
//            }
//            if (node2==null){
//                node2=headA;
//            }else {
//                node2=node2.next;
//            }
            
            node1=(node1==null)?headB:node1.next;
            node2=(node2==null)?headA:node2.next;
        }
        return node1;
    }
}
posted on 2020-09-20 10:00  一骑红尘妃子笑!  阅读(151)  评论(0编辑  收藏  举报