当前位置:   article > 正文

力扣-腾讯精选练习50题C++-141环形链表_力扣141题c

力扣141题c

给定一个链表,判断链表中是否有环。

为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。

示例 1:

输入:head = [3,2,0,-4], pos = 1
输出:true
解释:链表中有一个环,其尾部连接到第二个节点。

  1. /**
  2. * Definition for singly-linked list.
  3. * struct ListNode {
  4. * int val;
  5. * ListNode *next;
  6. * ListNode(int x) : val(x), next(NULL) {}
  7. * };
  8. */
  9. class Solution {
  10. public:
  11. bool hasCycle(ListNode *head) {
  12. if(head == nullptr || head->next == nullptr)
  13. return false;
  14. ListNode* fast = head->next->next;
  15. ListNode* slow = head->next;
  16. while(fast != nullptr && fast->next != nullptr) {
  17. if(fast == slow)
  18. return true;
  19. fast = fast->next->next;
  20. slow = slow->next;
  21. }
  22. return false;
  23. }
  24. };

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/prog456/article/detail/62832
推荐阅读
相关标签
  

闽ICP备14008679号