정답이 있는 자료구조 학습지

무료 인쇄용 자료구조 학습지: 쉬운 문제부터 시험 수준까지 8문제, 정답표 포함. 인쇄하거나 PDF로 저장하세요.

교수자 안내: 수업에서 무료로 인쇄, 복사, 사용할 수 있습니다. 새 워크시트마다 값이 새로 바뀌고 별도의 정답이 함께 제공됩니다. 강의 페이지에 ExamProblems 링크를 걸어 주시면 감사하겠습니다.

이름: ____________________   날짜: ____________

1.쉬움

스택의 맨 위에 원소를 추가하는 연산의 이름은 무엇입니까?

  1. APush
  2. BPop
  3. CEnqueue
  4. DPeek
2.쉬움

배열의 원소는 메모리에 어떻게 저장됩니까?

  1. A흩어져 있고 포인터로 연결되어
  2. B하나의 연속된 블록에 차례대로
  3. C해시가 고른 임의의 위치에
  4. D메모리 페이지의 트리에
3.쉬움

이진 트리의 전위 순회(preorder)는 노드를 어떤 순서로 방문합니까?

  1. A위에서부터 레벨별로
  2. B왼쪽 서브트리, 노드, 오른쪽 서브트리
  3. C노드, 왼쪽 서브트리, 오른쪽 서브트리
  4. D왼쪽 서브트리, 오른쪽 서브트리, 노드
4.보통

충돌한 키들을 같은 버킷의 리스트에 저장하는 충돌 해결 방법은 무엇입니까?

  1. A이차 탐사(Quadratic probing)
  2. B분리 체이닝(Separate chaining)
  3. C이중 해싱(Double hashing)
  4. D선형 탐사(Linear probing)
5.보통

어떤 애플리케이션은 빠른 조회가 필요하고, 키를 정렬된 순서로 나열하고 범위 질의에도 답해야 합니다. 가장 적합한 구조는 무엇입니까?

  1. A정렬되지 않은 연결 리스트
  2. B해시 테이블
  3. C스택
  4. D균형 이진 탐색 트리
6.보통

적재율이 임계값을 넘은 뒤 해시 테이블이 재해싱(rehash)하면 무슨 일이 일어납니까?

  1. A충돌한 키만 테이블 끝의 새 오버플로 리스트로 옮긴다
  2. B더 큰 테이블을 할당하고 모든 키를 다시 삽입한다
  3. C기존 키를 제자리에서 정렬한다
  4. D자리를 만들기 위해 가장 오래된 키를 삭제한다
7.어려움

기수 트리(radix tree, 압축 트라이)는 일반 트라이를 어떻게 개선합니까?

  1. A각 노드의 자식을 빈도순으로 정렬한다
  2. B각 단어를 개별 노드가 아니라 루트의 해시 테이블에 저장한다
  3. C각 단어의 첫 글자만 유지한다
  4. D자식이 하나인 노드들의 사슬을 문자열로 레이블된 간선 하나로 합친다
8.어려움

데이터베이스와 파일 시스템에서 B-트리를 사용하는 이유는 무엇입니까?

  1. A재균형이 필요 없기 때문이다
  2. B높은 분기 계수로 트리를 얕게 유지하여 느린 디스크 읽기를 줄이기 때문이다
  3. C데이터를 정렬하지 않고 저장하기 때문이다
  4. D어떤 배열보다도 메모리를 적게 써서 전체 인덱스가 항상 주기억장치에 들어가기 때문이다

정답표

  1. 1. A · Push
  2. 2. B · 하나의 연속된 블록에 차례대로
  3. 3. C · 노드, 왼쪽 서브트리, 오른쪽 서브트리
  4. 4. B · 분리 체이닝(Separate chaining)
  5. 5. D · 균형 이진 탐색 트리
  6. 6. B · 더 큰 테이블을 할당하고 모든 키를 다시 삽입한다
  7. 7. D · 자식이 하나인 노드들의 사슬을 문자열로 레이블된 간선 하나로 합친다
  8. 8. B · 높은 분기 계수로 트리를 얕게 유지하여 느린 디스크 읽기를 줄이기 때문이다

자세한 단계별 풀이: examproblems.com에서 이 주제를 연습하세요.