美文网首页
141. Linked List Cycle

141. Linked List Cycle

作者: 苏州城外无故人 | 来源:发表于2019-03-18 16:48 被阅读0次
    image.png
     //hashtable
        //Time complexity O(n)
        //Space complexityO(n)
    
    //    public boolean hasCycle(ListNode head) {
    //        Set<ListNode> nodes = new HashSet<>();
    //        while (head != null) {
    //            if (nodes.contains(head)) {
    //                return true;
    //            } else {
    //                nodes.add(head);
    //            }
    //            head = head.next;
    //        }
    //        return false;
    //    }
    
        /**
         * Time complexity O(n)
         * Space complexityO(1)
         * @param head
         * @return
         */
    
       public boolean hasCycle(ListNode head) {
            if (head == null || head.next == null) {
                return false;
            }
            ListNode slow = head;
            ListNode fast = head.next;
            while (slow != fast) {
                if (fast == null || fast.next == null) {
                    return false;
                }
                slow = slow.next;
                fast = fast.next.next;
            }
            return true;
        }
        }
    
    

    相关文章

      网友评论

          本文标题:141. Linked List Cycle

          本文链接:https://www.haomeiwen.com/subject/uldbmqtx.html