/*
* function ListNode(x){
* this.val = x;
* this.next = null;
* }
*/
/**
*
* @param head ListNode类
* @return bool布尔型
*/
function hasCycle( head ) {
// write code here
if (!head || !head.next) {
return false
}
let quickPoint = head;
let slowPoint = head;
while(quickPoint && slowPoint ){
quickPoint = quickPoint.next;
slowPoint = slowPoint.next;
if(quickPoint){//这一步不写在一起是为了保证不存在quickPoint为空的情况下还进行.next的赋值
quickPoint = quickPoint.next;
}
if(quickPoint == slowPoint){
return true
}
}
return false
}
module.exports = {
hasCycle : hasCycle
};