美文网首页
双指针应用六:链表的环入口

双指针应用六:链表的环入口

作者: 程一刀 | 来源:发表于2021-05-10 09:41 被阅读0次

题目地址: https://leetcode-cn.com/problems/linked-list-cycle-ii/

题目描述: 给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null
参考代码:

class Solution {
public:
    ListNode *detectCycle(ListNode *head) {
        ListNode *fast = head;
        ListNode *slow = head;
        while (fast != nullptr && fast->next != nullptr) {
            slow = slow->next;
            fast = fast->next;
            fast = fast->next;
            if (slow == fast) {
                ListNode *index1 = head;
                ListNode *index2 = fast;
                while (index1 != index2) {
                    index1 = index1 ->next;
                    index2 = index2 ->next;
                }
                return  index1;
            }
        }
        return nullptr;
        
    }
};

参考链接: https://github.com/youngyangyang04/leetcode-master/blob/master/problems/0142.%E7%8E%AF%E5%BD%A2%E9%93%BE%E8%A1%A8II.md

相关文章

  • 双指针应用六:链表的环入口

    题目地址: https://leetcode-cn.com/problems/linked-list-cycle-...

  • 数据结构与算法整理

    (1)链表的技巧 快慢指针(找环,环入口,环长度) 双指针(倒数K个节点) 合并链表(递归求解) 约瑟夫环(环形链...

  • 算法题整整理

    1.链表是否有环,找出环的入口 答: 是否有环,快慢指针,最后两个指针重合了,就有环。 环入口:思路如下,设hea...

  • 面试题20:链表中环的入口节点

    题目:如果一个链表中包含环,如何找到环的入口节点思路:分为判断是不是有环,找环的入口 快慢指针,如果快指针能够追上...

  • 剑指Offer55 链表环入口(链表多指针遍历)

    给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。 设置两个指针,快指针每次走两步,慢指针...

  • leetCode 141 Linked List Cycle

    关键字:链表、双指针 难度:easy 题目大意:检测给定的链表是否存在环 题目: 解题思路: 1、采用双指针,起始...

  • 算法学习--双指针

    双指针分类 快慢指针 左右指针 快慢指针:主要解决链表相关问题,比如:典型的判断链表中是否包含环、链表倒是第K个节...

  • 23.链表中环的入口节点

    题目 一个链表中包含环,请找出该链表的环的入口节点。 思路 1.先判断链表中是否包含环 (快慢指针)node1,n...

  • P111-判断一个单向链表是否构成了环形,找出环的出口

    判断是否为环 思路1 两个指针 思路2 map 求入口 参考:链表有环,判断环的入口点 求环长 参考:那么如何得到...

  • 找链表的环入口问题

    题目:已知一个链表有环,求环的入口 链表有环,所以让一个快指针,一个慢指针,同时从起点出发,他们必定在环中相遇。而...

网友评论

      本文标题:双指针应用六:链表的环入口

      本文链接:https://www.haomeiwen.com/subject/gonudltx.html