안녕하세요.
링크드리스트를 공부하는 중에 아무래도 이해가 안가는 부분이 있어 이렇게 질문 글 올립니다.
과제는 아니구요 뭐 취미생활겸 자기계발겸하여 공부하고 있습니다..
위에 사진은.............. 제가 "이중 링크드 리스트"에 대해서 정리해본 것 입니다.
위에 사진에는 Insert 함수와 우측 하단에 그림이 있는데요.
우측 하단의 그림은 생성 순서를 Insert 함수와 맞추어서 그림으로 그려서 표현해보았구요.
질문은 아래와 같습니다.
1. 노드 생성시
- 최초 노드를 생성하는 경우,
-> Insert 함수에서 노드를 생성함.
- 중간에 삽입하는 경우, ( 이게... 문제........ 으악 ㅠ )
-> 1. 만약 1-2-3 이라는 노드가 존재할 경우, 이 곳에 1-2-'F'-3 과 같이 노드를 삽입하려 할때
-> 2. F라는 노드를 생성 시도하면 Insert 함수를 통해서 before와 after가 생성될 것입니다.
-> 3. 질문1 : 위에 작성된 코드를 봤을때 Node* before=node; 문을 통해서 before 자체가 재 생성되는 것인가요?
아니면 이전에 있던 before의 데이터를 읽어드리는 것인가요.
-> 4. 질문2 : GetTail이라는 함수를 책에서는 사용하라고 했는데 설명을 읽고 제가 직접 만들어보았습니다.
Stu_info->next->prev 부분이죠. 올바른 문장인가요?
두서없는 질문 글 읽어주셔서 감사합니다!