您的位置:首页 > 其它

LeetCode Linked List Cycle (Floyd判圈算法)

2014-08-29 16:47 330 查看
题目描述:https://oj.leetcode.com/problems/linked-list-cycle/

给一个链表,Floyd判圈可在O(n)的时间复杂度,O(1)的空间复杂度内判定其中有没有环。

package LinkedListCycle;

public class Solution {
class ListNode{
int val;
ListNode next;
ListNode(int x){
val = x;
next = null;
}
}
public boolean hasCycle(ListNode head) {
if(head==null) return false;
ListNode slowPtr = head;
ListNode fastPtr = head;
boolean flag = true;
do{
if(fastPtr.next == null ||fastPtr.next.next == null){
flag = false;
break;
}
slowPtr = slowPtr.next;
fastPtr = fastPtr.next.next;
}while(slowPtr != fastPtr);
return flag;
}
}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: