题解 | #链表中环的入口结点#

链表中环的入口结点

http://www.nowcoder.com/practice/253d2c59ec3e4bc68da16833f79a38e4

/**
     * 用hashMap保存下个节点的前驱节点,当key有多个前驱节点就是入口
     *
     * @param pHead
     * @return
     */
    public static ListNode EntryNodeOfLoop(ListNode pHead) {
        Map<ListNode, ListNode> map = new HashMap<>();
        if (pHead == null || pHead.next == null) {
            return null;
        }
        ListNode next = pHead;
        while (next != null) {
            if (map.get(next.next) == null) {
                map.put(next.next, next);
            } else {
                if (next != pHead) {
                    return next.next;
                } else {
                    return next;
                }
            }
            next = next.next;
        }
        return null;
    }
算法 文章被收录于专栏

数据结构和算法

全部评论

相关推荐

06-26 10:08
门头沟学院 C++
北京Golang实习,一个月4700,吃住都不报,公司位置在海淀。请问友友怎么看呢?如果要租房的话有什么建议吗
码农索隆:租房肯定是合租了,剩下的钱,差不多够正常吃饭了,看看能不能学到东西吧
点赞 评论 收藏
分享
重生我想学测开:嵌入式的问题,我准备入行京东外卖了
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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