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

判断链表中是否有环

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

import java.util.*;
/**
 * Definition for singly-linked list.
 * class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) {
 *         val = x;
 *         next = null;
 *     }
 * }
 */
public class Solution {
    public boolean hasCycle(ListNode head) {
	  //判断链表中是否有环,利用快慢指针法,快指针一次走两步,慢指针一次走一步,如果有环,一定会有快指针追上慢指针的情况,如果没有环,那么一定是快指针先出现空值,。。循环的终止条件要防止快指针出现空指针异常。
        ListNode fast=head;
        ListNode slow=head;
        while(fast!=null&&fast.next!=null){
            fast=fast.next.next;
            slow=slow.next;
             if(fast==slow){
                return true;
            }

        }
        return false;
    }
}

全部评论

相关推荐

04-28 19:31
门头沟学院 Java
真烦好烦真烦:可恶的二手车贩子,居然对我们门头沟学院的人这么没礼貌
点赞 评论 收藏
分享
Elastic90:公司不要求加班,但 又不允许你准点下班,经典又当又立
点赞 评论 收藏
分享
纯朴的商业竞争手段
职场不咸鱼:看来商家也喜欢jd
投递美团等公司6个岗位 > 京东美团大战,你怎么看?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务