자료 구조와 알고리즘
시간 복잡도가 O(n²)인 프로그램에서 데이터 수가 1,000일 때 처리 시간이 0.5초였다. 데이터 수를 4,000으로 하면 처리 시간은 약 몇 초가 되는가?
- A2초
- B8초
- C32초
정답과 해설 보기
정답: B. 8초
O(n²)에서는 처리 시간이 데이터 수의 제곱에 비례하므로, 데이터 수가 4배가 되면 처리 시간은 4² = 16배가 되어 0.5초 × 16 = 8초입니다. 2초는 데이터 수에 비례하는 O(n)의 경우, 32초는 세제곱에 비례하는 O(n³)의 경우(4³ = 64배)의 값입니다. 실제로는 데이터가 캐시에 다 들어가지 않게 되는 등의 영향으로 이보다 느려지기도 합니다.