다음 수식들에 대해 ㉠~㉢에 해당하는 빅오(O) 표기가 옳게 짝지어진 것은? (단, k는 상수이다)- ㉠: 6,450,254, 4log(n)+3, 3n+8,230, nlog(n)+4n, 2n2+5n+3
- ㉡: 6,450,254
- ㉢: 6,450,254, 4log(n)+3, 3n+8,230, nlog(n)+4n, 2n2+5n+3, 4n3+n2−2n
- 묶음 밖: 3×2n+8n5
㉠ ㉡ ㉢
1O(2n) / O(1) / O(nk)
2O(n2) / O(1) / O(n3)
3O(n2) / O(log(n)) / O(nk)
4O(n2) / O(log(n)) / O(n3)
해설
각 묶음에서 가장 빠르게 증가하는 항을 취하면 ㉠은 O(n2), ㉡은 O(1), ㉢은 O(n3)이다.
빅오 표기는 최고차항만 남기고 계수를 버린다. ㉡의 6,450,254는 n과 무관한 상수이고, ㉠의 최고차항은 2n2, ㉢의 최고차항은 4n3이다.
- 지수·상수·nk 조합: ㉠ 묶음에는 지수항이 없으며 ㉢의 차수는 3으로 정해진다.
- 제곱·로그·nk 조합: 상수인 ㉡을 로그로 잡았고 ㉢의 차수도 3으로 특정된다.
- 제곱·로그·세제곱 조합: ㉡은 상수이므로 가장 엄격한 표기는 로그가 아니라 상수 시간이다.
오류나 개정된 내용이 보이면 알려주세요