Leetcode/Top 100 Liked

[Linked List][Easy] 141. Linked List Cycle

자전거통학 2024. 4. 11. 23:19

Q. 주어진 리스트에 순환이 있는지 판단하라. 

 

 

Solution. 

 순환이 있는 지 판단하는 가장 쉬운 방법은 fast, slow node를 순환시키고 같은 위치에 존재하는 지점이 있는지 확인하는 것이다. 

 잘 알려진 방법이므로, 이 문제가 easy level 이 된다. 

 

더보기
public bool HasCycle(ListNode head) 
{
    ListNode slow = head;
    ListNode fast = head;

    while(fast!=null && fast.next!=null)
    {
        slow = slow.next;
        fast = fast.next.next;
        if(slow == fast) return true;
    }
    return false;
}

 

적절한 결과를 얻었다.