题目描述:
判断给定的链表中是否有环
扩展:
你能给出空间复杂度O(1)的解法么?
解题思路:
- 判定链表中是否有环,关键在于这个链表是不是可以一直循环走下去。
- 那么可以设置两个指针,快指针和慢指针,一个走两步,一个走一步。如果链表中有环,那么它们迟早是会相遇的,而且复杂度恒定为O(1)。
- 如果链表为null,单节点,双节点,都不会有环,直接返回false就行了。
我的解法:
/*
* function ListNode(x){
* this.val = x;
* this.next = null;
* }
*/
/**
*
* @param head ListNode类
* @return bool布尔型
*/
function hasCycle( head ) {
// write code here