원형 연결 리스트에 삽입을 할 때 삽입 함수를
void insert_first(ListNode **phead, ListNode*node){
if (*phead == NULL){
*phead = node;
node -> link = node;
}else{
node ->link = (*phead) ->link;
(*phead) -> link = node;
}
}
이렇게 하고 맨마지막 삽입시에만
void insert_last(ListNode**phead, ListNode *node){
if (*phead == NULL){
*phead = node;
node-> link = node;
}else{
node ->link = (*phead) ->link;
(*phead) -> link = node;
*phead = node;
}
}
이렇게 한 줄을 추가하여 앞 뒤 연결을 해주잖아용!
이렇게 할 시에는 head 포인터 뒤에 값이 삽입되고
반대로 맨 마지막에 값을 삽입하고 싶으면 head포인터를 맨 끝을 가리키게 하라고 배웠거든요.
이론으로는 이해가 가는데 어떻게 head포인터를 맨 끝을 가리키게 바꿔야할지 잘 모르겠어요..ㅠㅠ