Skip to content

141链表环

code

javascript
/**
 * @param {ListNode} head
 * @return {boolean}
 */
var hasCycle = function(head) {
    if (head === null || head.next === null || head.next.next === null){
        return false;
    }
    let fast = head.next.next;
    let slow = head.next;
    while(fast.next !== null && fast.next.next !== null) {
        if(fast === slow) {
            return true;
        }
        fast = fast.next.next;
        slow = slow.next;
    }
    return false;
};

总结

  1. 写的鸡飞狗跳的,这东西一段时间不写真的不行,而且作为一个有创造性的人就不应该高强度每天鼓捣这些东西,正常人脑子不是为了这个的
  2. 链表其实就是很啰嗦的验非空,验.next非空,这一套
  3. 快慢指针本身思路说来没什么,直接撸就行了,这个写的很啰嗦,应该可以整理一下
  4. 还得再写一遍,但是写一遍之后应该就还好