题解 | #两个链表的第一个公共结点#

两个链表的第一个公共结点

https://www.nowcoder.com/practice/6ab1d9a29e88450685099d45c9e31e46

import java.util.*;
/*
public class ListNode {
    int val;
    ListNode next = null;

    ListNode(int val) {
        this.val = val;
    }
}*/
public class Solution {
    public ListNode FindFirstCommonNode(ListNode pHead1, ListNode pHead2) {
        Stack<ListNode> stack1 = new Stack<ListNode>();
        Stack<ListNode> stack2 = new Stack<ListNode>();
        while(pHead1!=null){
            stack1.add(pHead1);
            pHead1 = pHead1.next;
        }
        while(pHead2!=null){
            stack2.add(pHead2);
            pHead2 = pHead2.next;
        }
        ListNode pre = null;
        ListNode node1;
        ListNode node2;
        while(!stack1.isEmpty() && !stack2.isEmpty()){
            node1 = stack1.pop();
            node2 = stack2.pop();
            if(node1 == node2){
                pre = node1;
                continue;
            }else{
                return pre;
            }
        }
        return pre;
    }
}

全部评论

相关推荐

一天代码十万三:实习东西太少了,而且体现不出你业务,3个月不可能就这点产出吧,建议实习多写点,玩具项目面试官都不感兴趣的
点赞 评论 收藏
分享
新记话事人:你就和她说去抖音了
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务