题解 | #判断链表中是否有环#

判断链表中是否有环

http://www.nowcoder.com/practice/650474f313294468a4ded3ce0f7898b9

双指针法

设置两个指针,一个每次前进两布,一个每次前进一步,若链表有环,则两个指针最后一定会相遇。若快指针走到尽头,两指针仍未相遇,则链表无环。

C++代码:

class Solution {
public:
    bool hasCycle(ListNode *head) {
        ListNode *l = head, *r = head;
        while (r && r->next) {
            l = l->next;
            r = r->next->next;
            if (l == r) {return true;}
        }
        return false;
    }
};
全部评论

相关推荐

投票
我要狠拿offer:如果不是必须去成都绝对选九院呀,九院在四川top1研究所了吧
点赞 评论 收藏
分享
尊嘟假嘟点击就送:加v细说,问题很大
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务