모두CBT

다음 알고리즘에 대한 시간 복잡도는?sum ← 0;for j ← 1 t… | [7급 국가직 알고리즘] 23년 1회차 기출문제 상세 페이지

1[7급 국가직 알고리즘] 23년 1회차
다음 알고리즘에 대한 시간 복잡도는?
sum ← 0;
for j ← 1 to n
for i ← 1 to j
sum ← sum + 1;
for k ← 0 to n - 1
sum ← sum + k;
1
O(n)O(n)
2
O(nlog⁡2(n))O(n\log_2(n))
3
O(n2)O(n^2)
4
O(2n)O(2^n)
해설

전체 시간 복잡도는 O(n2)O(n^2)이다.

이중 반복문: 안쪽 반복이 j회씩 실행되므로 1+2+⋯+n=n(n+1)21+2+\cdots+n=\dfrac{n(n+1)}{2}회
단일 반복문: n회
합계: n(n+1)2+n\dfrac{n(n+1)}{2}+n이며 최고차항이 n2n^2이다.

  • O(n)O(n)은 뒤쪽 단일 반복문만 센 값으로, 이중 반복을 반영하지 못한다.
  • O(nlog⁡2(n))O(n\log_2(n))는 반복 범위가 절반씩 줄어드는 구조에서 나오며, 여기서 안쪽 반복은 j까지 선형으로 늘어난다.
  • O(2n)O(2^n)은 지수적 재귀 등에서 나타나며, 다항 횟수만 실행되는 이 코드와 무관하다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[7급 국가직 알고리즘] 23년 1회차 25문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요7급 국가직 알고리즘 기출문제 암기장 전체 보기