1.쉬움
방향 그래프란 무엇입니까?
- A사이클이 없는 그래프
- B서로 다른 모든 정점 쌍이 간선으로 연결된 그래프
- C간선이 한 정점에서 다른 정점으로 향하는 방향을 가진 그래프
- D모든 간선에 가중치가 있는 그래프
2.쉬움
"후입선출"(LIFO) 원칙으로 동작하는 자료 구조는 무엇입니까?
- A큐(Queue)
- B해시 테이블(Hash table)
- C스택(Stack)
- D연결 리스트(Linked list)
3.쉬움
트리의 루트는 무엇입니까?
- A부모가 없는 최상위 노드
- B중간에 있는 아무 노드
- C가장 큰 값을 가진 노드
- D자식이 없는 노드
4.보통
이진 힙을 포인터 없이 배열에 저장할 수 있는 이유는 무엇입니까?
- A배열이 키를 자동으로 정렬된 순서로 유지하므로 포인터가 필요 없기 때문에
- B힙에는 원소가 100개를 넘지 않기 때문에
- C힙의 모든 키가 같기 때문에
- D완전 이진 트리이므로 위치가 간단한 인덱스 공식을 따르기 때문에
5.보통
적재율이 임계값을 넘은 뒤 해시 테이블이 재해싱(rehash)하면 무슨 일이 일어납니까?
- A기존 키를 제자리에서 정렬한다
- B자리를 만들기 위해 가장 오래된 키를 삭제한다
- C더 큰 테이블을 할당하고 모든 키를 다시 삽입한다
- D충돌한 키만 테이블 끝의 새 오버플로 리스트로 옮긴다
6.보통
연결 리스트에서 센티넬(더미) 노드의 목적은 무엇입니까?
- A원소의 개수를 저장하기 위해
- B리스트를 정렬된 상태로 만들기 위해
- C리스트가 정해진 최대 노드 수를 넘어 커지는 것을 막기 위해
- Dhead나 tail의 특수한 경우를 없애 코드를 단순하게 하기 위해
7.어려움
데이터베이스가 인덱스에 일반 B-트리보다 B+ 트리를 자주 사용하는 이유는 무엇입니까?
- A모든 레코드가 연결된 리프에 있어 범위 스캔이 효율적이기 때문에
- BB+ 트리는 이진 내부 노드를 사용하여 디스크 읽기 횟수를 줄이기 때문에
- CB+ 트리는 균형을 유지할 필요가 없기 때문에
- DB+ 트리는 데이터를 루트에만 저장하기 때문에
8.어려움
데이터베이스와 파일 시스템에서 B-트리를 사용하는 이유는 무엇입니까?
- A데이터를 정렬하지 않고 저장하기 때문이다
- B재균형이 필요 없기 때문이다
- C어떤 배열보다도 메모리를 적게 써서 전체 인덱스가 항상 주기억장치에 들어가기 때문이다
- D높은 분기 계수로 트리를 얕게 유지하여 느린 디스크 읽기를 줄이기 때문이다
정답표
- 1. C · 간선이 한 정점에서 다른 정점으로 향하는 방향을 가진 그래프
- 2. C · 스택(Stack)
- 3. A · 부모가 없는 최상위 노드
- 4. D · 완전 이진 트리이므로 위치가 간단한 인덱스 공식을 따르기 때문에
- 5. C · 더 큰 테이블을 할당하고 모든 키를 다시 삽입한다
- 6. D · head나 tail의 특수한 경우를 없애 코드를 단순하게 하기 위해
- 7. A · 모든 레코드가 연결된 리프에 있어 범위 스캔이 효율적이기 때문에
- 8. D · 높은 분기 계수로 트리를 얕게 유지하여 느린 디스크 읽기를 줄이기 때문이다
자세한 단계별 풀이: examproblems.com에서 이 주제를 연습하세요.