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

Problem Linked List Cycle II

时间:2014-07-07 17:00:35      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:des   style   blog   color   strong   io   

Problem Description:

Given a linked list, return the node where the cycle begins. If there is no cycle, return null.

Follow up:
Can you solve it without using extra space?

 

 Solution:
 1     public ListNode detectCycle(ListNode head) {
 2         if (head == null) return null;
 3         if (head.next == null || head.next.next == null) return null; 
 4         ListNode tortoise = head.next;
 5         ListNode hare = head.next.next;
 6         while (tortoise != hare) {
 7             if (tortoise.next == null) return null;
 8             tortoise = tortoise.next;
 9             if (hare.next == null || hare.next.next == null) return null;
10             hare = hare.next.next;
11         }
12 
13         tortoise = head;
14         while(tortoise != hare) {
15             tortoise = tortoise.next;
16             hare = hare.next;
17         }
18 
19         return tortoise;
20     }

 

Problem Linked List Cycle II,布布扣,bubuko.com

Problem Linked List Cycle II

标签:des   style   blog   color   strong   io   

原文地址:http://www.cnblogs.com/liew/p/3815024.html

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