
시간 복잡도와 빅오(Big-O) 표기법
·
Problem Solving
복잡도란복잡도(Complexity)란 알고리즘의 성능을 나타내는 척도이며, 일반적으로 시간 복잡도와 공간 복잡도로 나뉜다.시간 복잡도 : 알고리즘의 실행 시간, 즉 연산 수행 횟수를 측정하는 척도이다.공간 복잡도 : 알고리즘이 실행되는 동안 필요한 메모리의 양을 측정하는 척도이다.효율적인 알고리즘을 사용한다고 했을 때, 시간 복잡도와 공간 복잡도는 서로 상반된 관계를 형성할 수 있다. 즉, 빠른 알고리즘은 종종 더 많은 메모리 공간을 필요로 하며, 반대로 공간 효율적인 알고리즘은 더 많은 시간이 소요될 수 있다. 수식어 없이 '복잡도'라고 할 경우, 두 가지 중 일반적으로 시간 복잡도를 의미한다. 알고리즘 문제를 해결할 때 가장 흔히 직면하는 문제는 '시간 초과'이며, 문제의 특성에 따라 다르지만, 보통..