数据结构-leetcode-环形链表

数据结构-leetcode-环形链表_第1张图片

解题图解:

 数据结构-leetcode-环形链表_第2张图片

数据结构-leetcode-环形链表_第3张图片数据结构-leetcode-环形链表_第4张图片 数据结构-leetcode-环形链表_第5张图片

代码如下: 

bool hasCycle(struct ListNode *head) {
    struct ListNode * fast=head;
    //在这里fast是快指针
    //head作为low指针
    //因为这个题不需要做修改也只需返回true或false
    //就少开辟一个空间
    while(fast!=NULL&&fast->next!=NULL){
        head=head->next;
        fast=fast->next->next;
        //fast每次前进两个节点
        //head每次前进一个    
        if(head==fast){
            return true;
        }
    }
   return false;
}

你可能感兴趣的:(C,数据结构,leetcode,链表)