[Algorithm] 빅오 표기법과 시간 복잡도의 개념 및 예제
·
Computer Science/Algorithm
알고리즘에서 중요한 속성 1. 정확성 : 주어진 입력을 모두 처리하며 올바르게 출력해야 한다. 2. 효율성 : 문제를 효율적으로 해결해야 한다. 두 가지 변수로 측정 - 시간 복잡도 : 알고리즘이 얼마나 빠르게 결과를 출력하는지 측정, 입력 크기 n에 대한 시간 함수 T(n)으로 표현 - 공간 복잡도 : 원하는 결과를 얻기 위해 알고리즘이 얼마나 메모리를 사용하는지 측정, 입력 크기 n에 대한 메모리 사용 함수 S(n)으로 표현 빅오 표기법 (big-O) - 점근적 분석의 한 방법 - 수학적 정의 - cg(n)은 모든 n >= n0에 대해 f(n)의 상한이다. - 최고차항의 차수로 표현하고 계수와 낮은 차수의 항은 무시한다. (예시) n^2 + n = O(n^2) 시간 복잡도 알고리즘에 주로 나오는 시간..