141. 环形链表 [JS Undefined类型的运用]

【解析】

1.遍历每个节点

2.遍历过的节点用新的空间来标记

  JS新的空间不用在使用前声明,用法参考实现。(JS原型、原型链)

3.如果遇到标记过的节点则是环形

【实现】

/**
 * Definition for singly-linked list.
 * function ListNode(val) {
 *     this.val = val;
 *     this.next = null;
 * }
 */
/**
 * @param {ListNode} head
 * @return {boolean}
 */
var hasCycle = function(head) {
    node=head;
    while(node){
        //初次用到node.isVisit = undefined
        if(node.isVisit){
            return true; 
        }else{
            node.isVisit=true;
        }
        node=node.next;
    }
    return false;
};
原文地址:https://www.cnblogs.com/remly/p/10411850.html