每天刷一道牛客题霸-第10天-链表中环的入口节点

题目

https://www.nowcoder.com/practice/6e630519bf86480296d0f1c868d425ad?tpId=190&&tqId=35178&rp=1&ru=/ta/job-code-high-rd&qru=/ta/job-code-high-rd/question-ranking

package main
import . "nc_tools"
/*
 * type ListNode struct{
 *   Val int
 *   Next *ListNode
 * }
 */

/**
 * 
 * @param head ListNode类 
 * @return ListNode类
*/
func detectCycle( head *ListNode ) *ListNode {

    if head == nil {
        return head
    }
    fast := head
    slow := head

    for fast != nil && slow != nil {
        if fast.Next != nil {
            fast = fast.Next.Next
        }else {
            return nil
        }
        slow = slow.Next
        if slow == fast {
            break
        }
    }
    if fast == nil || slow == nil {
        return nil
    }
    for fast != head {
        fast = fast.Next
        head = head.Next
    }
    return fast
    // write code here
}
#牛客题霸##题解#
全部评论

相关推荐

仁者伍敌:实习生要工作经验,工作要实习经验
点赞 评论 收藏
分享
点赞 评论 收藏
分享
下个早班:秒挂就是不缺人
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-10 14:10
啊啊啊啊好幸福,妈妈是我找工作发疯前的一束光
黑皮白袜臭脚体育生:看了这篇帖子之后已经第一百次质问老妈,仍然没有得到我的老妈是老板的回答
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务