1.쉬움
이진 트리의 후위 순회(postorder)는 노드를 어떤 순서로 방문합니까?
- A오른쪽 서브트리, 노드, 왼쪽 서브트리
- B왼쪽 서브트리, 오른쪽 서브트리, 노드
- C왼쪽 서브트리, 노드, 오른쪽 서브트리
- D노드, 왼쪽 서브트리, 오른쪽 서브트리
2.쉬움
단일 연결 리스트에서 각 노드에는 무엇이 들어 있습니까?
- A데이터만
- B데이터와 다음 노드에 대한 참조
- C데이터와 인덱스
- D데이터와 다른 모든 노드에 대한 참조
3.쉬움
그래프에서 사이클이란 무엇입니까?
- A간선이 없는 정점
- B같은 정점에서 시작하고 끝나는 경로
- C모든 정점을 방문하는 경로
- D가중치가 0인 간선
4.보통
인접 행렬로 간선 (u, v)가 존재하는지 확인하는 데 얼마나 걸립니까?
- AO(1)
- BO(E)
- CO(log V)
- DO(V)
5.보통
실제로 배열 순회가 같은 길이의 연결 리스트 순회보다 훨씬 빠른 경우가 많은 이유는 무엇입니까?
- A배열은 값 비교에 더 적은 명령어를 쓰기 때문에
- B연결 리스트는 항상 원소를 디스크에 저장하기 때문에
- C배열 순회는 전체가 O(1)이고 연결 리스트 순회는 O(n)이기 때문에
- D배열 원소는 연속되어 있어 CPU 캐시를 잘 활용하기 때문에
6.보통
"{[()]}"의 괄호가 균형을 이루는지 확인하는 데 사용하는 자료 구조는 무엇입니까?
- A스택
- B해시 테이블
- C큐
- D이진 탐색 트리
7.어려움
O(1)의 추가 메모리로 단일 연결 리스트에 사이클이 있는지 어떻게 탐지할 수 있습니까?
- A개수가 리스트 길이 필드를 넘을 때까지 노드를 센다
- B방문한 모든 노드를 해시 집합에 저장한다
- C리스트를 정렬하고 중복을 찾는다
- D포인터 하나는 한 칸씩, 다른 하나는 두 칸씩 움직여 만나는지 확인한다
8.어려움
블룸 필터는 "이 원소가 집합에 있는가?"라는 질문에 어떻게 답합니까?
- A숫자에 대해서만 답한다
- B항상 정확한 답을 준다
- C거짓 음성은 있을 수 있지만 거짓 양성은 없다
- D거짓 양성은 있을 수 있지만 거짓 음성은 없다
정답표
- 1. B · 왼쪽 서브트리, 오른쪽 서브트리, 노드
- 2. B · 데이터와 다음 노드에 대한 참조
- 3. B · 같은 정점에서 시작하고 끝나는 경로
- 4. A · O(1)
- 5. D · 배열 원소는 연속되어 있어 CPU 캐시를 잘 활용하기 때문에
- 6. A · 스택
- 7. D · 포인터 하나는 한 칸씩, 다른 하나는 두 칸씩 움직여 만나는지 확인한다
- 8. D · 거짓 양성은 있을 수 있지만 거짓 음성은 없다
자세한 단계별 풀이: examproblems.com에서 이 주제를 연습하세요.