1.
기억장치를 접근 속도가 빠른 것부터 순서대로 바르게 나열한 것은?
- ①캐시 → 레지스터 → 주기억장치
- ②레지스터 → 캐시 → 주기억장치
- ③레지스터 → 주기억장치 → 캐시
- ④주기억장치 → 캐시 → 레지스터
정답 보기
정답 ② · 해설 보기
시행 2026-04-04 · 책형 가 · 20문항 · 출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)
정답 ② · 해설 보기
정답 ③ · 해설 보기
정답 ② · 해설 보기
정답 ④ · 해설 보기
정답 ① · 해설 보기
정답 ② · 해설 보기
초기 요구분석 후 프로토타입을 개발하기 이전에 위험 분석 단계를 거친다. 이렇게 만들어진 프로토타입을 사용자가 평가하고, 개발자는 추가 요구사항을 반영하여 다시 위험 분석을 거쳐 2차 프로토타입을 만든다. 이 과정을 반복하면서 사용자의 요구사항이 충분히 반영된 최종 제품을 완성해 나간다.
정답 ① · 해설 보기
ㄱ. 플래시 메모리는 NAND형과 NOR형이 있다.ㄴ. SRAM은 DRAM에 비해 접근 속도가 빠른 편이다.ㄷ. ROM은 휘발성 메모리로 전원 없이 데이터를 유지할 수 없다.ㄹ. EPROM은 자외선 등을 사용하여 여러 번 저장된 내용을 지우고 다른 내용을 기록할 수 있다.
정답 ④ · 해설 보기
정답 ④ · 해설 보기
#include <stdio.h>
void func(int *p, int *q) {
if (p > q) return;
printf("%d ", *p + *q);
func(p + 1, q - 1);
}
int main(void) {
int a[] = { 3, 1, 4, 1, 5 };
func(a, a + 4);
return 0;
}정답 ③ · 해설 보기
정답 ② · 해설 보기
정답 ③ · 해설 보기
A | B | C | D |
1 | 2 | 7 | 7 |
2 | 8 | 5 | 6 |
2 | 6 | 5 | 6 |
4 | 8 | 7 | 2 |
정답 ④ · 해설 보기
8 1 2 3 1 4 5 3 4 1 4 3
정답 ③ · 해설 보기
정답 ① · 해설 보기
class ClassA {
ClassA() {
System.out.print("1");
}
static {
System.out.print("4");
}
}
public class ClassB extends ClassA {
ClassB() {
System.out.print("2");
}
public static void main(String[] args) {
System.out.print("3");
new ClassB();
}
}정답 ④ · 해설 보기
ㄱ. 교착상태 발생의 필요조건은 상호 배제, 선점, 점유와 대기, 선형 대기이다.ㄴ. 프로세스를 강제로 종료해서 교착상태 문제를 처리하는 것은 교착상태 회복 기법에 해당한다.ㄷ. 어떤 제약을 가하지 않고 자원 할당 그래프를 지속적으로 모니터링하면서 교착상태 발생 여부를 살펴보는 것은 교착상태 예방 기법에 해당한다.ㄹ. 은행원 알고리즘(banker’s algorithm) 등을 이용하여 안전(safe) 상태를 유지할 수 있는 범위 내에서 자원을 할당하는 것은 교착상태 회피 기법에 해당한다.
정답 ③ · 해설 보기
# 정렬하고자 하는 대상인 A[first]…A[last]를
# 피벗(A[last]) 기준으로 분할하는 함수
def partition(A, first, last):
p = A[last]
low = first
high = last
while low < high:
while p > A[low] and low < high:
low += 1
while p <= A[high] and low < high:
high -= 1
if low < high:
A[low], A[high] = A[high], A[low]
A[low], A[last] = A[last], A[low]
return low배열 | 7 | 3 | 2 | 19 | 13 | 5 | 11 | 17 |
정답 ② · 해설 보기
○ 작업 대기 큐: 15, 4, 8, 120, 65, 70, 105○ 헤드 시작 위치: 50
정답 ① · 해설 보기
#include <stdio.h>
void rotate(int *a, int n, int k) {
k %= n;
while (k--) {
int first = a[0];
int i;
for (i = 0; i < n - 1; i++) {
a[i] = a[i + 1];
}
a[n - 1] = first;
}
}
int main(void) {
int arr[] = {1, 2, 3, 4, 5};
rotate(arr, 5, 7);
int i;
for (i = 0; i < 5; i++) {
printf("%d ", arr[i]);
}
return 0;
}정답 ② · 해설 보기