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

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

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

思路:1.利用集合的元素唯一性,先把一个链表A遍历,并保存节点在集合里。 2.遍历另一个链表B,如果B的节点在集合里存在,说明有公共节点,返回该节点。

    def FindFirstCommonNode(self , pHead1 , pHead2 ):
        lsit1 = set()
        while pHead1:
            lsit1.add(pHead1)
            pHead1 = pHead1.next
        while pHead2:
            if pHead2 not in lsit1:
                pHead2 = pHead2.next
            else:
                return pHead2
        if not pHead2 or pHead1:
            return None
        return None
全部评论

相关推荐

06-27 18:45
中山大学 Ruby
25届应届毕业生,来广州2个礼拜了,找不到工作,绝望了,太难过了…
应届想染班味:9爷找不到工作只能说明,太摆了或者太挑了。
点赞 评论 收藏
分享
龙珠传说:nb,公务员解约不需要支付违约金吧
点赞 评论 收藏
分享
评论
4
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务