var hasCycle = function (head) {
// 如果链表为空,直接返回 false
if (!head) return false;
// 初始化快慢指针
let slow = head;
let fast = head.next;
// 快慢指针同时移动,直到快指针到达链表末尾或两者相遇
while (slow !== fast) {
// 如果快指针到达链表末尾,说明链表没有环
if (!fast || !fast.next) return false;
// 慢指针移动一步,快指针移动两步
slow = slow.next;
fast = fast.next.next;
}
return true;
};