728x90
고대 전설에 등장하는 뱀인 우로보로스.
우로보로스는 자신의 꼬리를 먹으며 살아갑니다.
이러한 우로보로스와 같이 링크드 리스트(Singly Linked List)나 더블 링크드 리스트(Doubly Linked List)의 머리가 꼬리를 물고 있는 형태를 환형 링크드 리스트(Circular Singly Linked List) 또는 환형 더블 링크드 리스트(Circular Doubly Linked List)라고 합니다.
환형 링크드 리스트(Circular Linked List)
환형 링크드 리스트는 위에서 말했듯 일반 링크드 리스트(Singly Linked List)로도 구현될 수 있고 더블 링크드 리스트(Double Linked List)로도 구현될 수 있습니다.
링크드 리스트는 그냥 꼬리(Tail)의 다음 노드 포인터를 헤드로 가리키도록 하면 됩니다.
더블 링크드 리스트는 테일(꼬리)의 다음 노드 포인터를 헤드로, 헤드의 이전 노드 포인터를 테일로 가리키면 됩니다.