[7급 국가직 자료구조론 2012년 20번]

구조체 list를 이용한 두 개의 단순연결리스트 x, y의 후위노드(음영부분)들을 서로 스왑(swap)하기 위한 코드는? (단, 후위노드들의 next는 NULL이 아니다)
struct list {  int data;  struct list *next;  } *x, *y, *tmp; 
자료구조론
  1. ①
    tmp = x->next;
    		x->next->next = y->next->next; 
    		y->next->next = tmp; 
    		tmp = y->next; 
    		x->next = y->next; 
    		y->next = tmp; 
  2. ②
    tmp = x->next->next;
    		x->next->next = y->next->next; 
    		y->next->next = tmp;
    		tmp = x->next; 
    		x->next = y->next; 
    		y->next = tmp;
  3. ③
    tmp = x->next;
    		x->next = y->next; 
    		y->next = tmp; 
    		tmp = x->next; 
    		x->next->next = y->next->next;  
    		y->next->next = tmp;
  4. ④
    tmp = x->next->next;
    		y->next->next = tmp; 
    		x->next->next = y->next->next; 
    		tmp = x->next; 
    		y->next = tmp; 
    		x->next = y->next; 

선지를 골라 바로 채점해 보세요.

정답 ②

출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)

신고가 접수됐습니다. 감사합니다.

오류 신고