1.쉬움
스택의 맨 위에 원소를 추가하는 연산의 이름은 무엇입니까?
- APush
- BEnqueue
- CPop
- DPeek
2.쉬움
이진 트리의 후위 순회(postorder)는 노드를 어떤 순서로 방문합니까?
- A왼쪽 서브트리, 오른쪽 서브트리, 노드
- B오른쪽 서브트리, 노드, 왼쪽 서브트리
- C노드, 왼쪽 서브트리, 오른쪽 서브트리
- D왼쪽 서브트리, 노드, 오른쪽 서브트리
3.쉬움
트리에서 형제(sibling) 노드란 무엇입니까?
- A한 노드와 그 부모
- B서로 다른 서브트리에서 같은 깊이에 있는 노드들
- C자식이 없는 노드들
- D같은 부모를 공유하는 노드들
4.보통
원소가 n개인 배열의 중간에 원소를 삽입하는 비용은 얼마입니까?
- A이진 탐색 때문에 O(log n)
- B인덱스를 알고 있으므로 O(1)
- C각 원소가 n번 이동하므로 O(n²)
- D뒤의 원소들을 이동시켜야 하므로 O(n)
5.보통
무방향 그래프의 인접 행렬에 대해 참인 것은 무엇입니까?
- A주대각선에 대해 대칭이다
- B각 행에 1이 정확히 하나 있다
- C주대각선에는 항상 1이 들어 있다
- D항상 상삼각 행렬이다
6.보통
이진 트리의 루트는 1이고 왼쪽 자식은 2, 오른쪽 자식은 3입니다. 노드 2의 자식은 4(왼쪽)와 5(오른쪽)입니다. 전위 순회 결과는 무엇입니까?
- A1 2 4 5 3
- B4 5 2 3 1
- C1 2 3 4 5
- D4 2 5 1 3
7.어려움
단순 균등 해싱 가정에서, 키가 n개이고 버킷이 m개인 체이닝 해시 테이블의 탐색 기대 시간은 얼마입니까?
- AO(n)
- BO(log n)
- Cα = n / m일 때 O(1 + α)
- DO(m)
8.어려움
개방 주소법을 사용하는 해시 테이블에서 삭제할 때 "툼스톤"(tombstone) 표시를 자주 사용하는 이유는 무엇입니까?
- A툼스톤이 해싱 속도를 높이기 때문이다
- B슬롯을 비우면 다른 키의 탐사 순서가 끊길 수 있기 때문이다
- C테이블이 정렬된 상태가 되기 때문이다
- D보안을 위해 삭제된 키를 영구히 보관해야 하므로 슬롯을 재사용할 수 없기 때문이다
정답표
- 1. A · Push
- 2. A · 왼쪽 서브트리, 오른쪽 서브트리, 노드
- 3. D · 같은 부모를 공유하는 노드들
- 4. D · 뒤의 원소들을 이동시켜야 하므로 O(n)
- 5. A · 주대각선에 대해 대칭이다
- 6. A · 1 2 4 5 3
- 7. C · α = n / m일 때 O(1 + α)
- 8. B · 슬롯을 비우면 다른 키의 탐사 순서가 끊길 수 있기 때문이다
자세한 단계별 풀이: examproblems.com에서 이 주제를 연습하세요.