다음 프로그램은 연결 리스트를 만들기 위한 코드의 일부분이다. 아래 그림과 같이 두 개의 노드 first, second가 연결되었다고 가정하고, 위의 코드를 참조하여 노드 tmp를 노드 first와 노드 second 사이에 삽입하고자 할 때, 프로그램 코드로 옳은 것은?
struct node { int number; struct node *link; }; struct node first; struct node second; struct node tmp;
현재 연결 상태: first → second → NULL
정답 2번
연결 리스트 중간에 tmp를 삽입할 때는 기존 연결을 잃지 않도록 tmp를 뒤 노드에 먼저 연결해야 합니다. ① tmp.link에 first.link를 대입해 tmp가 second를 가리키게 합니다. ② first.link에 &tmp를 대입해 first가 tmp를 가리키게 합니다. 따라서 `tmp.link = first.link; first.link = &tmp;` 순서가 맞습니다.
콘텐츠 정보
- 자료 유형
- 공개 기출
- 검수 상태
- 자동 검사 완료
- 해설 작성·검수
- 정처LAB 자동 검사
- 최종 검수
- 2026-07-26