判断一个链表是否有环,并找出环的入口

来源:互联网 发布:大数据处理常用算法 编辑:程序博客网 时间:2024/05/21 10:47

一个链表中包含环,请找出该链表的环的入口结点。

 ListNode* EntryNodeOfLoop(ListNode* pHead)    {        if(pHead==NULL || pHead->next==NULL)            return NULL;        ListNode *fast=pHead;        ListNode *slow=pHead;        while(fast!=NULL && fast->next!=NULL){            fast=fast->next->next;            slow=slow->next;            if(fast==slow)                break;        }        //没有环的情况        if(fast==NULL || fast->next==NULL)            return NULL;        slow=pHead;        while(fast!=slow){            fast=fast->next;            slow=slow->next;        }        return fast;    }
阅读全文
0 0
原创粉丝点击