• leetCode-linkedListCycle判断链表是否有环


    题目

    Given a linked list, determine if it has a cycle in it.
    Follow up:
    Can you solve it without using extra space?

    分析

    判断链表是否有环,采用快慢指针,如果相遇则表示有环

    AC代码

    /**
     * Definition for singly-linked list.
     * struct ListNode {
     *     int val;
     *     ListNode *next;
     *     ListNode(int x) : val(x), next(NULL) {}
     * };
     */
    class Solution {
    public:
        bool hasCycle(ListNode *head) {
            if(!head || !head->next){
                return false;
            }
            ListNode* slow = head;
            ListNode* fast = head->next;
            while(fast->next && fast->next->next && fast != slow){
                fast = fast->next->next;
                slow = slow->next;
            }
            return fast == slow;
        }
    };
    
    转载请保留原文链接及作者
    本文标题:
    文章作者: LepeCoder
    发布时间:
    原始链接:
  • 相关阅读:
    树链剖分
    NOI2015 软件包管理器(树链剖分+线段树)
    9.11NOIP模拟题
    9.10NOIP模拟题
    bzoj1121[POI2008]激光发射器SZK(结论)
    9.9 NOIP模拟题
    树形dp
    P1272 重建道路(树形dp)
    Codeforces Round #419 (Div. 2)
    9.2NOIP模拟题
  • 原文地址:https://www.cnblogs.com/lepeCoder/p/leetCode-linkedListCycle.html
Copyright © 2020-2023  润新知