Hyun's Wonderwall

[컴퓨터알고리즘] 3장 - 함수의 증가 본문

Subjects/컴퓨터알고리즘

[컴퓨터알고리즘] 3장 - 함수의 증가

Hyun_! 2024. 4. 24. 19:12

Asymptotic Analysis 점근적 분석

- Order of growth가 관심사.

- 이론적으로 수행 시간을 분석: n에 대한 함수로 알아낸다. 최고차항이 결정.

- 시간복잡도 비교: 1 << logn << n << nlogn << n^2 << n^3 << 2^n << n!

 

Asymptotic Notations 점근적 표기

- Big-Oh, Big-Omega, Theta, small-oh, small-omega

 

Big O: f(n) = O(g(n))이면 g(n)은 f(n)의 상한. upper bound.

small o: f(n) = o(g(n))이면 f(n)은 g(n)보다 느리다

Big Ω: f(n) = Ω(g(n))이면 g(n)은 f(n)의 하한. lower bound.

small ω: f(n) = ω(g(n)) 이면 f(n)은 g(n)보다 빠르다.

Theta Θ: f(n) = Θ(g(n))이면 f(n)과 g(n)은 증가속도가 같다. tight bound.

 

Monotonicity

f(n)이 단조 증가: m<=n일때 f(m)<=f(n)

f(n)이 단조 감소: m<=n일때 f(m)>=f(n)

같음을 허용하지 않으면 강한 단조 증가/감소(순증가/순감소)

 

로그함수들 - lgn, logn은 증가속도가 같다

지수함수들 - 2^n, 3^n은 증가속도가 다르다