美文网首页
链表有环

链表有环

作者: warManHy | 来源:发表于2019-07-23 00:06 被阅读0次
  1. 遍历链表,判断节点 p->next 为null, 就到了链表最后
  2. map,标记访问过节点,重复访问有环
class Solution{
public: 
  bool hasCycle(ListNode *head){
    unordered_map<ListNode*,bool>m;
    while(head){
      if(m.find(head) != m.end()) return true;
      m[head] = true;
      head = head->next;
    }
    return false;
  }
};
  1. 一快一慢俩个节点,一个快一个慢,只要相遇就是有环
class Solution {
public:
    bool hasCycle(ListNode *head) {
        if (head == NULL){
            return false;
        }
        ListNode *fast = head;
        ListNode *slow = head;
        while ( fast != NULL && slow !=NULL && fast->next != NULL ){
            slow = slow->next;
            fast = fast->next->next;
            if (fast == slow){
                return true;
            }
        }
        return false;
    }
};

相关文章

  • 检测链表有环

    题目:如何判断一个单链表是否有环?若有环,如何找出环的入口节点。 一、单链表是否有环 思路分析: 单链表有环,是指...

  • 链表算法

    定位链表中间节点 链表反转 链表是否有环, 返回的是环的位置,0代表没有环

  • 寻找两个链表的第一个公共结点

    有三种情况: 1、 两个链表都没有环2、 一个链表有环,一个链表无环3、 两个链表都有环 参考文章:求两个单链表的...

  • leetcode 141 判断链表中是否有环

    题目描述 给定一个链表,判断链表中是否有环。 进阶: 解题思路 无环链表,最后一个节点为nil,有环链表可以无限循...

  • Java实现有环的单向链表,并判断单向链表是否有环

    Java实现有环的单向链表,并判断单向链表是否有环 有一个单向链表,链表当中有可能出现环,就像下图这样。我们如何判...

  • 链表算法面试?看我就够了!——链表中存在环问题

    链表中存在环问题 3.1 判断链表是否有环 单链表中的环是指链表末尾的节点的 next 指针不为 NULL ,而是...

  • 链表-链表有环问题

    1. 判断一个单向链表是否有环 有环的链链表大概张这样 有环的链表和普通的链表的区别就是尾指针指向了链表中的某一个...

  • 链表有环

    遍历链表,判断节点 p->next 为null, 就到了链表最后 map,标记访问过节点,重复访问有环 一快一慢俩...

  • 有环链表

    判断一个单链表是否有环 方法一:哈希表辅助遍历单链表每个节点,并存储在哈希表中,如果下次遍历的节点在哈希表出现,则...

  • 力扣算法 - 环形链表(判断是否有环)

    环形链表 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表...

网友评论

      本文标题:链表有环

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