| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 | 'use strict'/** * Definition for singly-linked list. * function ListNode(val) { *     this.val = val; *     this.next = null; * } */function ListNode(val) {    this.val = val    this.next = null}/** * @param {ListNode} head * @return {boolean} */var hasCycle = function (head) {    if (head === null || head.next === null) return false    let set = new Set()    let curr = head    set.add(curr)    curr = curr.next    for (;;) {        if (curr === null) return false        if (set.has(curr)) return true        set.add(curr)        curr = curr.next    }}function __main__() {    let n13 = new ListNode(3)    let n12 = new ListNode(3)    let n1 = new ListNode(1)    n1.next = n12    n12.next = n13    let n23 = new ListNode(3)    let n22 = new ListNode(3)    let n2 = new ListNode(1)    n23.next = n2    n2.next = n22    n22.next = n23    /*eslint no-console: ["error", { allow: ["log"] }] */    console.log(hasCycle(n1))    console.log(hasCycle(n2))}__main__()
 |