1.쉬움
정적 배열과 동적 배열의 주된 차이는 무엇입니까?
- A정적 배열은 숫자만 저장할 수 있다
- B동적 배열은 더 큰 메모리 블록으로 옮겨 가며 커질 수 있다
- C동적 배열은 원소를 연결된 노드에 저장하므로 한 번에 하나씩 커질 수 있다
- D정적 배열은 인덱스 접근이 더 느리다
2.쉬움
가중 그래프란 무엇입니까?
- A간선이 더 많은 일부 정점이 다른 정점보다 무거운 그래프
- B간선이 정점보다 많은 그래프
- C각 간선에 비용이나 거리 같은 수치가 있는 그래프
- D디스크에 저장된 그래프
3.쉬움
그래프의 인접 리스트 표현에서 각 정점마다 무엇이 저장됩니까?
- AV개의 불리언 값으로 된 행
- B다른 모든 정점까지의 최단 경로
- C그래프의 전체 간선 수
- D이웃한 정점들의 리스트
4.보통
알파벳이 고정된 트라이(trie)에서 길이 L인 단어를 탐색하는 데 얼마나 걸립니까?
- An이 단어 수일 때 O(n)
- Bn이 단어 수일 때 O(log n)
- CO(L × n)
- D저장된 단어 수와 관계없이 O(L)
5.보통
"{[()]}"의 괄호가 균형을 이루는지 확인하는 데 사용하는 자료 구조는 무엇입니까?
- A이진 탐색 트리
- B해시 테이블
- C스택
- D큐
6.보통
배열에 저장된 이진 최소 힙(인덱스는 0부터 시작)에서 인덱스 i인 노드의 자식은 어디에 있습니까?
- Ai + 1과 i + 2
- B2i + 1과 2i + 2
- C2i와 2i + 1
- Di/2와 i/2 + 1
7.어려움
루트가 50이고, 왼쪽 서브트리는 30(자식 20, 40), 오른쪽 서브트리는 70(자식 60, 80)인 BST에서 중위 후속자를 사용하여 루트를 삭제합니다. 어떤 키가 새 루트가 됩니까?
- A60
- B70
- C40
- D80
8.어려움
개방 주소법을 사용하는 해시 테이블에서 삭제할 때 "툼스톤"(tombstone) 표시를 자주 사용하는 이유는 무엇입니까?
- A테이블이 정렬된 상태가 되기 때문이다
- B툼스톤이 해싱 속도를 높이기 때문이다
- C보안을 위해 삭제된 키를 영구히 보관해야 하므로 슬롯을 재사용할 수 없기 때문이다
- D슬롯을 비우면 다른 키의 탐사 순서가 끊길 수 있기 때문이다
정답표
- 1. B · 동적 배열은 더 큰 메모리 블록으로 옮겨 가며 커질 수 있다
- 2. C · 각 간선에 비용이나 거리 같은 수치가 있는 그래프
- 3. D · 이웃한 정점들의 리스트
- 4. D · 저장된 단어 수와 관계없이 O(L)
- 5. C · 스택
- 6. B · 2i + 1과 2i + 2
- 7. A · 60
- 8. D · 슬롯을 비우면 다른 키의 탐사 순서가 끊길 수 있기 때문이다
자세한 단계별 풀이: examproblems.com에서 이 주제를 연습하세요.