알고리즘 시간복잡도, 공간복잡도
· 약 4분
알고리즘 시간복잡도, 공간복잡도 개념
- 시간복잡도: 주어진 입력에 따라 알고리즘이 실행되는데 걸리는 시간의 양
- 공간복잡도: 주어진 입력에 따라 필요한 저장 공간의 양
- 성능 예측, 효율성 비교, 자원 최적화
알고리즘 복잡도 표기법, 빅오표기법
알고리즘 복잡도 표기법
구분 | 내용 | 비고 |
---|---|---|
Big O | 알고리즘이 최악의 성능일 때 평가 | 일반적 분석 |
Big Ω | 알고리즘이 최상의 성능일 때 평가 | 최적 상황 분석 |
Big θ | 알고리즘의 평균 성능 평가 | 전반적 성능 분석 |
- 주로 Big O 표기법으로 알고리즘의 복잡도 평가 및 측정
빅오표기법 유형
연산시간 | 유형 | 설명 |
---|---|---|
매우빠름 | 자료의 크기와 무관하게 항상 같은 속도로 작용 | |
일정한 크기로 잘라서 해결하는 유형 | ||
빠름 | 입력순서대로 처리, 자료 크기와 수행시간 정비례 | |
분할과 합병, 정렬 알고리즘의 최소한의 복잡도 | ||
입력한 n 크기가 작을시 보다 빠르나, 데이터 크기가 증가시 급격하게 비효율 | ||
느림 | 지수형으로 가능한 해결방법 모두 검사, 매우 비효율적 | |
입력 N에 따라 시간복잡도가 매우 빠르게 증가, 재고려 필요 |