다음 프로그램은 연결 리스트를 만들기 위한 코드의 일부분이다. 아래 그림과 같이 두 개의 노드 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번
first와 second 사이에 tmp를 넣을 때 first의 기존 연결을 먼저 덮어쓰면 second의 주소를 잃을 수 있다. 따라서 `tmp.link = first.link`로 tmp가 second를 가리키게 한 다음 `first.link = &tmp`로 first의 다음 노드를 tmp로 바꿔야 한다. 이 순서인 2번이 옳다.
콘텐츠 정보
- 자료 유형
- 공개 기출
- 검수 상태
- 내용 검수 완료
- 해설 작성·검수
- 정처LAB 편집 기준
- 최종 검수
- 2026-09-05