정답이 있는 알고리즘과 복잡도 학습지

무료 인쇄용 알고리즘과 복잡도 학습지: 쉬운 문제부터 시험 수준까지 8문제, 정답표 포함. 인쇄하거나 PDF로 저장하세요.

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

이름: ____________________   날짜: ____________

1.쉬움

알고리즘의 실행 시간이 O(n)입니다. 이 증가를 무엇이라고 합니까?

  1. A상수
  2. B로그
  3. C선형
  4. D이차
2.쉬움

분할 정복 알고리즘의 세 단계는 무엇입니까?

  1. A정렬, 탐색, 반환
  2. B추측, 확인, 반복
  3. C읽기, 계산, 쓰기
  4. D분할, 정복, 결합
3.쉬움

정렬된 배열에서 이진 탐색(binary search)의 시간 복잡도는 무엇입니까?

  1. AO(n)
  2. BO(n log n)
  3. CO(1)
  4. DO(log n)
4.보통

퀵 정렬의 최악의 경우 시간 복잡도는 무엇입니까?

  1. AO(n log n)
  2. BO(n²)
  3. CO(n)
  4. DO(log n)
5.보통

동적 프로그래밍(dynamic programming)은 문제가 무엇을 가질 때 유용합니까?

  1. A중복되는 부분 문제와 최적 부분 구조
  2. B부분 문제가 전혀 없어 한 단계로 풀 수 있음
  3. C루프가 하나뿐임
  4. D무작위 입력만 있음
6.보통

단순 재귀 피보나치(fib(n) = fib(n−1) + fib(n−2))의 시간 복잡도는 무엇입니까?

  1. A상수 시간
  2. B로그 시간
  3. C지수 시간
  4. D선형 시간
7.어려움

카라추바 곱셈은 T(n) = 3T(n/2) + O(n)을 만족합니다. 해는 무엇입니까?

  1. AΘ(n3)
  2. BΘ(n log n)
  3. CΘ(n²)
  4. DΘ(nlog₂ 3), 약 n1.585
8.어려움

큰 n에서 n!과 2ⁿ은 어떻게 비교됩니까?

  1. A같은 비율로 증가한다
  2. Bn!이 2ⁿ보다 빠르게 증가한다
  3. C2ⁿ이 n!보다 빠르게 증가한다
  4. Dn!은 O(n²)이다

정답표

  1. 1. C · 선형
  2. 2. D · 분할, 정복, 결합
  3. 3. D · O(log n)
  4. 4. B · O(n²)
  5. 5. A · 중복되는 부분 문제와 최적 부분 구조
  6. 6. C · 지수 시간
  7. 7. D · Θ(nlog₂ 3), 약 n1.585
  8. 8. B · n!이 2ⁿ보다 빠르게 증가한다

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