[7급 국가직 자료구조론 2024년 15번]

최소 1개 이상의 노드로 이루어진 원형 연결 리스트(circular linked list)에서 포인터 L이 리스트의 첫 번째 노드를 가리킨다고 할 때, 데이터의 값이 x인 노드를 탐색하여 반환하는 C 코드는?
자료구조론
  1. ①
    ListNode *searchCList(ListNode *L, int x) {
    				ListNode *p = L;
    				while ( p != L ) {
    					if ( p->data == x ) return p;
    					p = p->link;
    				}
    				return NULL;
    			}
  2. ②
    ListNode *searchCList(ListNode *L, int x) {
    				ListNode *p = L;
    				while ( p->link != L ) {
    					if ( p->data == x ) return p;
    					p = p->link;
    				} 
    				return NULL;
    			}
  3. ③
    ListNode *searchCList(ListNode *L, int x) {
    				ListNode *p = L;
    				do {
    					if ( p->data == x ) return p;
    					p = p->link;
    				} while ( p != L );
    				return NULL;
    			}
  4. ④
    ListNode *searchCList(ListNode *L, int x) {
    				ListNode *p = L;
    				do {
    					if ( p->data == x ) return p;
    					p = p->link;
    				} while ( p->link != L );
    				return NULL;
    			}

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

정답 ③

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

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

오류 신고