1.
55개 간선(edge)을 갖는 무방향 완전 그래프의 정점(vertex) 개수는?
- ①8
- ②9
- ③10
- ④11
정답 보기
정답 ④ · 해설 보기
시행 2025-09-20 · 책형 가 · 25문항 · 출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)
정답 ④ · 해설 보기
○ 초기 데이터: 21, 3, 18, 33, 9, 15○ 2번 연산 수행 결과: 3, 18, 21, 33, 9, 15
정답 ① · 해설 보기
Algorithm(int n) {
int i, j, k;
int sum = 0;
for(i = 0; i < 1000; i++)
for(j = 1; j < (n - 500); j++)
for(k = (n - 100); k < (n + 100); k++)
sum = sum + i + j + k;
}정답 ② · 해설 보기




정답 ④ · 해설 보기

a | b | c | d | e | |
a | 0 | (가) | 1 | 1 | 0 |
b | (나) | 0 | 0 | 0 | (다) |
c | 1 | 0 | 0 | (라) | 1 |
d | 1 | 0 | 1 | 0 | 1 |
e | 0 | (마) | 1 | (바) | (사) |
정답 ③ · 해설 보기
double power(double x, int n, int c)
{
printf("c : %d\n", c);
if(n == 0) return 1;
else if(n % 2 == 0) {
c++;
return power(x * x, n / 2, c);
}
else {
c++;
return x * power(x * x, (n - 1) / 2, c);
}
}정답 ① · 해설 보기

정답 ③ · 해설 보기

연산 1: 인덱스 1번에 원소 H 삽입연산 2: 인덱스 3번 원소 삭제
3
3
10
10정답 ③ · 해설 보기
#define SWAP(x, y, t) ( (t)=(x), (x)=(y), (y)=(t) )
void heap_sort(int L[], int n){
int i, temp;
for(i = n/2; i >= 1; i--) (가)
adjust(L, i, n);
for(i = n-1; i >= 1; i--) { (나)
SWAP(L[1], L[i+1], temp);
adjust(L, 1, i);
}
}
void adjust(int L[], int root, int n) {
int next = 2 * root;
int X = L[root];
while(next <= n) {
if(next < n && L[next] < L[next + 1])
next++;
if(X > L[next]) break;
L[next / 2] = L[next];
next *= 2;
}
L[next / 2] = X;
}ㄱ. (가) for 문을 수행한 후 리스트 L에는 (61, 48, 59, 15, 19, 11)이 저장된다.ㄴ. (나) for 문을 첫 1회 수행한 후 리스트 L에는 (59, 48, 19, 15, 11, 61)이 저장된다.ㄷ. (나) for 문의 시간 복잡도는 이다.
정답 ③ · 해설 보기
19, 7, 10, 15, 25, 32, 17, 5
정답 ② · 해설 보기

연산 1: 원소 B 삽입연산 2: 원소 한 개 삭제연산 3: 원소 C 삽입연산 4: 원소 D 삽입연산 5: 원소 두 개 삭제연산 6: 원소 E 삽입연산 7: 원소 F 삽입




정답 ④ · 해설 보기
정답 ① · 해설 보기

정답 ③ · 해설 보기
char arr[6][5][4];
정답 ② · 해설 보기
int BSearch(int data[], int size, int target) {
int mid, left = 0, right = size - 1;
while(left <= right) {
mid = (가);
if(target == data[mid]) return mid;
else if(target > data[mid]) left = (나);
else right = (다);
}
return -1;
}정답 ③ · 해설 보기
class Node: def __init__(self, data, next): self.data = data self.next = next class SinglyLinkedList: def __init__(self): self.head = None def func1(self, data): node = self.head self.head = Node(data, node) def func2(self, data): if self.head is None: self.func1(data) else : node = self.head while node.next is not None: node = node.next node.next = Node(data, None) def func3(self, pos): if pos < 0: return None node = self.head while pos > 0 and node != None: node = node.next pos -= 1 return node def showList(self): node = self.head while node : print(node.data, end=' ') node = node.next myList = SinglyLinkedList() myList.func1(1); myList.func2(2) myList.func1(3); myList.func2(4) myList.func2(myList.func3(0).data) myList.showList()
정답 ③ · 해설 보기
#include <stdio.h>
#include <stdlib.h>
typedef struct ListNode {
int value;
struct ListNode* next;
} ListNode;
int func(ListNode* p, int n) {
int i, sum = 0;
for(i = 0; i < n; i++) {
sum += p->value;
p = p->next;
}
return sum;
}
int main() {
int i, s, SIZE = 5;
ListNode* p[SIZE];
for(i = 0; i < SIZE; i++) {
p[i] = (ListNode*)malloc(sizeof(ListNode));
p[i]->value = i;
}
for(i = 0; i < SIZE-1; i++)
p[i]->next = p[i+1];
p[SIZE-1]->next = p[0];
s = func(p[4], 7);
printf("%d", s);
return 0;
}정답 ① · 해설 보기
정답 ④ · 해설 보기
#include <stdio.h>
int func(int key, int low, int high, int* list) {
list[high+1] = key;
int i = 0;
for(i = low; list[i] != key; i++);
if(i == (high+1)) return -1;
return i;
}
int main(int argc, char* argv[]) {
int list[100] = {1, 2, 3, 4, 5, 6, 7};
printf("%d\n", func(3, 4, 6, list));
return 0;
}정답 ① · 해설 보기
(A - B) * C - (D + E) / F
정답 ③ · 해설 보기
#include <stdio.h>
#include <stdlib.h>
void processArray(int* array, int size) {
int i = 0;
for(i = 0; i < size; i++) {
array[i] += i * 2;
}
}
void modifyArray(int* array) {
*(array + 1) = 10;
*(array + 3) = 20;
}
int main() {
int i = 0;
int sum = 0;
int size = 5;
int* array = (int*)malloc(size * sizeof(int));
for(i = 0; i < size; i++) {
array[i] = i;
}
processArray(array, size);
modifyArray(array);
for(i = 0; i < size; i++) {
sum += array[i];
}
free(array);
printf("Sum: %d\n", sum);
return 0;
}정답 ② · 해설 보기

정답 ① · 해설 보기
memory address | data | left_link | right_link |
1000 | A | 1020 | 1030 |
1010 | B | 1030 | NULL |
1020 | C | NULL | 1000 |
1030 | D | 1000 | 1010 |
정답 ④ · 해설 보기
1, 5, 7, 11, 13, 15, 17, 19
정답 ④ · 해설 보기
○ 버킷 크기: 13○ 슬롯(slot) 크기: 2○ 해시 함수: h(k) = k mod 13
21, 33, 8, 19, 76, 58, 27, 83, 30, 44, 7, 73, 2, 66, 85
정답 ② · 해설 보기