码迷,mamicode.com
首页 > 其他好文 > 详细

环形链表

时间:2019-09-14 14:19:46      阅读:113      评论:0      收藏:0      [点我收藏+]

标签:pre   hash表   node   内存   next   head   map   思路   null   

1.hash表:太慢了,内存消耗太多了。。当做思路看看得了。。

 1 bool hasCycle(ListNode *head) {
 2     unordered_map<ListNode*, bool> map;
 3     ListNode* temp = head;
 4     bool res = false;
 5     while(temp!=nullptr)
 6     {
 7         if (map.count(temp))
 8         {
 9             res = true;
10             break;
11         }
12         map[temp] = true;
13         temp = temp->next;
14     }
15     return res;
16 }

 

2.快慢指针

 1 bool hasCycle(ListNode *head) {
 2     ListNode* fast=head;
 3     ListNode* slow = head;
 4     bool res = false;
 5     while (fast&&fast->next)
 6     {
 7         fast = fast->next->next;
 8         slow = slow->next;
 9         if (fast == slow)
10         {
11             res = true;
12             break;
13         }
14     }
15     return res;
16 }

 

环形链表

标签:pre   hash表   node   内存   next   head   map   思路   null   

原文地址:https://www.cnblogs.com/zouma/p/11518803.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!