옳지 않은 연결은 전송 계층 – TCP, TELNET이다.
TCP는 전송 계층이 맞지만, 원격 접속 프로토콜인 TELNET은 응용 계층에 속한다.
- 응용 계층 – HTTP, SMTP: 웹과 메일 전송을 담당하는 응용 계층 프로토콜이다.
- 표현 계층 – MPEG, SSL: 데이터 압축·부호화와 암호화는 표현 계층의 기능으로 분류된다.
- 네트워크 계층 – IP, ICMP: 패킷 전달과 오류 통지를 맡는 네트워크 계층 프로토콜이다.
- 데이터링크 계층 – Ethernet, FDDI: 인접 노드 간 프레임 전송을 담당하는 LAN 기술이다.
지문의 접근권한을 세 자리 숫자로 표기하면 711이다.
읽기 4, 쓰기 2, 실행 1을 더해 소유자·그룹·기타 순으로 적는다. 소유자는 4+2+1=7, 그룹과 기타는 실행만 가능하므로 각각 1이다.
- 권한 722: 소유자 외 사용자에게 쓰기만 주는 표기이다.
- 권한 744: 소유자 외 사용자에게 읽기만 주는 표기이다.
- 권한 644: 소유자는 읽기·쓰기, 그 외 사용자는 읽기만 가능한 표기이다.
- 권한 611: 소유자에게 실행 권한이 없는 표기이다.
프레임 3개로 추적하면 LRU와 FIFO 모두 페이지 부재가 7회이다.
FIFO: 3·1·2 적재(부재 3회) → 4 부재(3 제거) → 1·4 적중 → 3 부재(1 제거) → 2 적중 → 1 부재(2 제거) → 2 부재(4 제거) → 3 적중, 합계 7회이다.
LRU: 3·1·2 적재(부재 3회) → 4 부재(3 제거) → 1·4 적중 → 3 부재(2 제거) → 2 부재(1 제거) → 1 부재(4 제거) → 2·3 적중, 합계 7회이다.
- LRU 5회 / FIFO 6회: 두 횟수 모두 추적 결과보다 작다.
- LRU 7회 / FIFO 6회: LRU는 맞지만 FIFO가 1회 적다.
- LRU 8회 / FIFO 6회: LRU는 1회 많고 FIFO는 1회 적다.
- LRU 8회 / FIFO 7회: FIFO는 맞지만 LRU가 1회 많다.
올바른 후위표기식은 이다.
괄호를 먼저 처리하고, 같은 우선순위인 곱셈과 나눗셈은 왼쪽부터, 덧셈은 마지막에 묶는다.
나눗셈을 적용한 뒤 와 더하면 위 식이 된다.
- : 를 먼저 묶어 연산 우선순위와 괄호를 어겼다.
- : 대신 를 계산해 괄호를 무시했다.
- : 연산자가 피연산자 사이에 있고 괄호만 빠진 중위 형태이다.
- : 연산자가 피연산자 앞에 오는 전위표기식이다.
옳지 않은 설명은 비지도 학습에서 손실함수가 정의될 수 없다는 것이다.
비지도 학습도 정답 레이블 없이 목적함수를 세울 수 있다. 군집 내 거리 제곱합이나 오토인코더의 재구성 오차가 대표적인 손실함수이다.
- 회귀: 입력과 정답 값의 쌍으로 연속값을 예측하므로 지도 학습이다.
- 군집화: 레이블 없이 유사한 데이터끼리 묶으므로 비지도 학습이다.
- 강화 학습: 행동의 결과로 받는 보상을 최대화하도록 학습한다.
- 인공신경망: 분류기, 오토인코더, 심층 강화 학습처럼 세 학습 방식 모두에 쓰인다.
ㄴ.Best-fit 할당 방식은 요청하는 메모리 크기에 가장 일치하는 크기의 메모리 블록을 할당함으로써 외부 단편화를 최소화 할 수 있다.
ㄷ.First-fit 할당 방식은 탐색 시 요청한 메모리 크기를 할당할 수 있는 메모리 블록을 찾았을 때 바로 할당함으로써 탐색 시간을 줄일 수 있다.
ㄹ.Buddy 할당 방식은 메모리를 2의 거듭제곱 단위의 크기로 할당하여 내부 단편화를 최소화할 수 있다.
옳은 설명은 ㄱ과 ㄷ뿐이다.
ㄴ과 ㄹ은 각 방식의 단점을 장점처럼 서술했으므로 두 지문을 제외한 조합만 성립한다.
- ㄱ(옳음): Worst-fit은 가용 공간 중 가장 큰 블록에 배치한다.
- ㄴ(틀림): Best-fit은 할당 후 아주 작은 틈이 남아 외부 단편화가 오히려 늘 수 있다.
- ㄷ(옳음): First-fit은 처음 맞는 블록에서 탐색을 멈춰 탐색 시간이 짧다.
- ㄹ(틀림): Buddy는 요청을 2의 거듭제곱 크기로 올려 할당하므로 내부 단편화가 발생한다.
옳지 않은 설명은 모든 노드에 유일한 부모가 존재한다는 것이다.
루트 노드는 부모가 없다. 루트를 제외한 노드에 대해서만 부모가 유일하다고 말할 수 있다.
- 공집합 허용: 이진 트리는 노드가 없는 공 트리도 포함해 정의한다.
- 자식 수: 각 노드는 왼쪽·오른쪽 최대 2개의 자식을 갖는다.
- 경로의 유일성: 트리에는 사이클이 없어 루트까지의 경로가 하나뿐이다.
- 간선 수: 루트를 뺀 각 노드가 부모로 향하는 간선을 하나씩 가지므로 개이다.
옳은 설명은 직접 사상 캐시에는 교체 정책이 필요 없다는 것이다.
직접 사상은 메모리 블록이 들어갈 캐시 위치가 하나로 고정되어 있어 쫓아낼 블록을 고를 필요가 없다.
- 완전 연관 사상: 어느 위치에나 저장할 수 있어 충돌 실패가 생기지 않는다.
- 블록 크기 증가: 인접 데이터를 함께 가져오므로 시간적 지역성이 아니라 공간적 지역성을 활용한다.
- Write-through: 캐시와 주기억장치를 함께 갱신한다.
- Write 버퍼: 주기억장치 쓰기 대기를 줄이는 장치로 Write-through 캐시에서도 쓰인다.
객체의 상세한 내용을 객체 외부에 철저히 숨기고 단순히 메시지만으로 객체와의 상호작용을 하게 하는 것을 ㉡ (이)라고 말한다.
㉠은 추상화, ㉡은 캡슐화이다.
불필요한 속성을 제거하고 중요한 정보만 표현하는 것이 추상화이고, 내부를 숨기고 메시지로만 상호작용하게 하는 것이 캡슐화이다.
- ㉠ 추상화 / ㉡ 다형성: 다형성은 같은 메시지에 객체마다 다르게 반응하는 성질이라 ㉡에 맞지 않는다.
- ㉠ 다형성 / ㉡ 캡슐화: 불필요한 속성을 제거하는 ㉠의 설명은 다형성이 아니다.
- ㉠ 상속 / ㉡ 다형성: 상속은 상위 클래스의 속성을 물려받는 개념으로 ㉠에 맞지 않고, ㉡도 다형성이 아니다.
- ㉠ 캡슐화 / ㉡ 추상화: 두 개념의 설명이 서로 뒤바뀌었다.

임계경로는 시작점에서 끝점까지 가장 긴 경로이며, 이 네트워크에서는 0→2→4→7로 길이가 14이다.
정점별 가장 이른 완료 시간을 앞에서부터 구한다. 정점 1은 3, 정점 2는 1, 정점 3은 4이다.
정점 4:
정점 5:
정점 6:
정점 7:
- 길이 10은 0→1→5→7 경로의 값으로, 최장 경로가 아니다.
- 길이 11은 0→3→6→7 경로의 값으로, 최장 경로가 아니다.
- 길이 13은 0→1→4→7 경로의 값으로, 최장 경로보다 1 짧다.
- 길이 16은 어떤 경로에서도 나오지 않는 값이다.
if (min == 0) return max;
else return gcd(min, max % min);
}
유클리드 호제법으로 구한 반환값은 6이다.
호출을 추적하면 다음과 같다.
gcd(54, 30) → gcd(30, 24)
gcd(30, 24) → gcd(24, 6)
gcd(24, 6) → gcd(6, 0)
gcd(6, 0): min이 0이므로 max인 6을 반환한다.
- 값 0: 종료 시점의 min 값이며 반환되는 값은 max이다.
- 값 54: 처음 전달한 max 인수일 뿐이다.
- 값 30: 처음 전달한 min 인수일 뿐이다.
- 값 24: 첫 재귀에서 구한 나머지일 뿐이다.
옳지 않은 설명은 FDMA를 사용한다는 것이다.
Wi-Fi 6의 다중 접속 기술은 OFDMA로, 직교 부반송파 묶음을 여러 단말에 동시에 나누어 준다.
- 1024-QAM: Wi-Fi 6에서 도입된 고차 변조 방식이다.
- CSMA/CA: 무선 LAN의 기본 매체 접근 제어 방식으로 유지된다.
- WPA3: Wi-Fi 6 인증과 함께 적용되는 보안 표준이다.
- 2.4GHz와 5GHz: IEEE 802.11ax는 두 대역을 모두 지원한다.
옳은 설명은 참조 무결성에 관한 것이다.
외래키 값은 참조되는 릴레이션의 기본키 값으로 존재하거나 NULL이어야 하므로 참조 대상이 없는 외래키는 허용되지 않는다.
- 애트리뷰트 순서: 같은 이름의 애트리뷰트는 둘 수 없지만 애트리뷰트 사이에 순서는 없다.
- 후보키 조건: 효율성이 아니라 유일성과 최소성을 만족해야 한다.
- 기본키로 선택되지 않은 후보키: 슈퍼키가 아니라 대체키라고 한다.
- 후보키의 성질: 튜플을 유일하게 식별하면서 최소성도 만족해야 한다.
서브넷마다 사용할 수 있는 호스트 수는 개이다.
255.255.255.192의 마지막 옥텟은 이므로 호스트 비트는 6개이다.
호스트 비트가 모두 0인 네트워크 주소와 모두 1인 브로드캐스트 주소는 호스트에 줄 수 없다.
- : 호스트 비트를 5개로 잘못 잡았다.
- : 예약 주소를 빼지 않은 전체 주소 수이다.
- : 예약 주소 2개 중 1개만 뺐다.
- : 호스트 비트를 7개로 잘못 잡았다.
new ← getNode(); // 삽입할 노드를 할당받음
new.data ← x; // 새 노드의 데이터 필드에 x를 저장함
if(CL == null) then // CL이 공백 리스트인 경우
CL ← new; // CL이 노드 new를 첫번째 노드로 가리킴
new.link ← new; // 참조변수 new의 값을 노드 new가 가리키는
ASDASDSDA // 새 노드의 링크 필드(new.link)에 저장함 else
end insertMiddleNode(CL, pre, x)
빈칸에는 new.link ← pre.link; pre.link ← new;가 들어간다.
새 노드가 pre의 기존 다음 노드를 먼저 가리키게 한 뒤, pre가 새 노드를 가리키게 해야 연결이 끊기지 않는다.
- pre.link ← new;만 수행: new의 링크가 비어 있어 기존 다음 노드와 연결되지 않는다.
- new.link ← pre;만 수행: new가 pre를 가리킬 뿐 pre에서 new로 가는 연결이 없다.
- new.link ← pre.link; new.link ← pre;: 두 번째 대입이 첫 번째 값을 덮어쓰고 pre의 링크도 그대로이다.
- new.link ← pre.link; pre ← new;: 지역 참조변수 pre만 바뀌고 pre 노드의 링크는 수정되지 않는다.
1단계: 2 27 19 50 34 21 13
2단계: 2 13 19 50 34 21 27
3단계: 2 13 19 50 34 21 27
4단계: 2 13 19 21 34 50 27
5단계: 2 13 19 21 27 50 34
6단계: 2 13 19 21 27 34 50
주어진 동작은 선택 정렬이다.
각 단계에서 미정렬 구간의 최솟값을 골라 구간 맨 앞 원소와 교환한다. 1단계는 2와 34, 2단계는 13과 27을 교환하고, 3단계는 19가 이미 제자리이다. 이후 21과 50, 27과 34, 34와 50을 차례로 교환한다.
- 퀵 정렬: 피벗을 기준으로 구간을 나누는 동작이 보이지 않는다.
- 셸 정렬: 일정 간격으로 떨어진 원소끼리 묶어 정렬하는 방식이 아니다.
- 버블 정렬: 인접 원소 교환이라면 1단계에서 2와 34가 한 번에 맞바뀔 수 없다.
- 삽입 정렬: 1단계에서 앞의 두 원소 27, 34가 정렬되어야 하므로 진행이 다르다.
| ㄱ. | ![]() | ㄴ. | ![]() |
| ㄷ. | ![]() | ㄹ. | ![]() |
교착상태인 그래프는 ㄹ뿐이다.
인스턴스가 여러 개인 자원 유형이 있으면 사이클은 교착상태의 필요조건일 뿐 충분조건이 아니다. 따라서 요청 없이 끝낼 수 있는 쓰레드가 자원을 반납하며 대기가 풀리는지 따져야 한다.
ㄹ에서는 이 을, 가 을, 이 를 기다린다. 이 자원들의 인스턴스는 모두 세 쓰레드에 할당되어 있어 어느 쓰레드도 진행할 수 없다.
- ㄱ은 사이클이 없고 이 요청 없이 끝나 을 반납하므로 , 순으로 진행된다.
- ㄴ은 사이클이 없고, 이 요청한 에 빈 인스턴스가 있어 바로 할당받으므로 차례로 진행된다.
- ㄷ은 , , , 로 이어지는 사이클이 있지만, 와 가 요청 없이 끝나 자원을 반납하므로 대기가 풀린다.
ㄴ.키보드에서 입력된 키 값을 잠시 저장할 때
ㄷ.그래프 너비 우선 탐색(BFS)을 할 때
ㄹ.서브루틴 호출시 복귀 주소를 저장할 때
큐에 적절한 것은 ㄴ과 ㄷ이다.
먼저 들어온 것을 먼저 처리해야 하면 큐, 가장 최근 것을 먼저 꺼내야 하면 스택을 쓴다.
- ㄱ(스택): 가장 최근에 방문한 길로 되돌아가야 하므로 후입선출이다.
- ㄴ(큐): 입력된 키는 들어온 순서대로 처리해야 하므로 버퍼 큐에 저장한다.
- ㄷ(큐): BFS는 먼저 발견한 정점부터 인접 정점을 방문한다.
- ㄹ(스택): 가장 나중에 호출된 서브루틴부터 복귀한다.
옳지 않은 설명은 UP 모형에 관한 것이다.
UP는 반복적·점진적 개발 방법으로, 요구사항을 초기에 모두 확정하지 않고 반복을 거치며 구체화한다.
- 나선형 모형: 보헴이 제안했으며 위험분석을 핵심 활동으로 추가했다.
- V-모형: 개발 단계와 검증 단계의 대응 관계를 드러낸 폭포수 모델의 변형이다.
- 애자일 기법: 과도한 문서보다 동작하는 소프트웨어를 중시한다.
- 익스트림 프로그래밍: 고객이 개발 과정에 참여해 요구 변화에 유연하게 대응한다.
옳지 않은 설명은 외부 스키마가 하나만 존재한다는 것이다.
외부 스키마는 사용자 관점별 구조이므로 여러 개 존재할 수 있다. 하나의 외부 스키마를 여러 사용자가 공용할 수 있다는 부분만 맞다.
- 개념 스키마의 내용: 개체 간의 관계와 제약 조건을 나타낸다.
- 내부 스키마: 물리적 저장 형태를 기술하며 하나만 존재한다.
- 외부 스키마의 역할: 사용자 입장에서 필요한 논리적 구조를 정의한다.
- 개념 스키마의 범위: 조직 전체의 데이터를 종합한 것으로 하나만 존재한다.



