题解 | #判断链表中是否有环#JS + 双指针

判断链表中是否有环

http://www.nowcoder.com/questionTerminal/650474f313294468a4ded3ce0f7898b9


function hasCycle( head ) {
    // write code here
    let slow = head;
    let fast = head;
    //这样能保证[] ,[item] 这两种不可能成环的情况直接返回false
    while (slow && fast && fast.next) {
        slow = slow.next;
        //其实不必担心[item1, item 2]这种情况会报错,不会的,因为这里的fast会变成null,下一次循环直接返回false。
        fast = fast.next.next;
        if (slow === fast) {
            return true;
        }
    }
    return false;
}
全部评论

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务