1.쉬움
배열에서는 O(1)이지만 단일 연결 리스트에서는 O(n)인 연산은 무엇입니까?
- A인덱스 i의 원소에 접근하기
- Bhead 원소 제거하기
- Chead에 삽입하기
- D첫 번째 원소 읽기
2.쉬움
트리의 높이는 일반적으로 어떻게 정의됩니까?
- A루트에서 리프까지 가장 긴 경로의 간선 수
- B루트의 자식 수
- C트리의 리프 수
- D루트와 모든 리프를 포함한 트리의 전체 노드 수
3.쉬움
최대 힙 성질(max-heap property)이란 무엇입니까?
- A키가 왼쪽에서 오른쪽으로 정렬되어 있다
- B모든 왼쪽 자식의 키가 오른쪽 형제의 키보다 크거나 같다
- C모든 리프에 최대 키가 들어 있다
- D모든 부모의 키가 자식의 키보다 크거나 같다
4.보통
이진 탐색 트리를 중위 순회(in-order)하면 키를 어떤 순서로 방문합니까?
- A오름차순 정렬 순서
- B레벨 순서
- C항상 내림차순
- D삽입 순서
5.보통
이진 탐색 트리의 한 노드에 오른쪽 서브트리가 있습니다. 그 노드의 중위 후속자(in-order successor)는 어디에 있습니까?
- A오른쪽 서브트리의 가장 왼쪽 노드
- B항상 부모
- C왼쪽 서브트리의 가장 오른쪽 노드
- D항상 오른쪽 자식
6.보통
원형 버퍼(링 버퍼)는 일반적으로 무엇을 구현하는 데 사용됩니까?
- A해시 함수
- B그래프 순회
- C고정 크기 큐
- D이진 탐색 트리
7.어려움
랭크에 의한 합집합(union by rank)이나 경로 압축 없이, 원소가 n개인 union-find 구조에서 find 한 번의 최악의 경우 비용은 얼마입니까?
- AO(n)
- BO(α(n))
- CO(1)
- DO(log n)
8.어려움
크러스컬의 최소 신장 트리 알고리즘에서 union-find 구조는 무엇에 사용됩니까?
- A시작 정점을 고르는 것
- B탐색 중 각 정점의 출발점으로부터의 현재 거리를 저장하는 것
- C간선을 가중치순으로 정렬하는 것
- D간선의 두 끝점이 이미 연결되어 있는지 확인하는 것
정답표
- 1. A · 인덱스 i의 원소에 접근하기
- 2. A · 루트에서 리프까지 가장 긴 경로의 간선 수
- 3. D · 모든 부모의 키가 자식의 키보다 크거나 같다
- 4. A · 오름차순 정렬 순서
- 5. A · 오른쪽 서브트리의 가장 왼쪽 노드
- 6. C · 고정 크기 큐
- 7. A · O(n)
- 8. D · 간선의 두 끝점이 이미 연결되어 있는지 확인하는 것
자세한 단계별 풀이: examproblems.com에서 이 주제를 연습하세요.