๋ง์ฐฌ๊ฐ์ง๋ก, ์ด ์์ค๋ 1๋ถํฐ n๊น์ง์ ํฉ์ ๊ตฌํฉ๋๋ค. ๋ณต์ก๋๋ ๋ฌด์์ผ๊น์?
๋ฐ๋ก O(1)์
๋๋ค. ๋์
์ฐ์ฐ ํ๋๋ง ์กด์ฌํ๊ธฐ ๋๋ฌธ์ด์ฃ .
์ด๋ ๊ฒ, ๊ฐ์ ๊ธฐ๋ฅ์ ํ๋ ํ๋ก๊ทธ๋จ์ด๋ผ๋ ๋ณต์ก๋๋ ๊ฐ๋ฐ์์ ์๋ จ๋์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค.
โ
๋ํ์ ์ผ๋ก ์๊ฐ ๋ณต์ก๋๋
โ
O(1) < O(log N) < O(N) < O(N * log N) < O(N^2) < O(N^3) < O(2^N) < O(N!)
โ
์์ผ๋ก ์๊ฐ ๋ณต์ก๋๊ฐ ์ฆ๊ฐํ์ฌ ํ๋ก๊ทธ๋จ ์คํ ์๊ฐ์ด ๊ธธ์ด์ง๋๋ค.
โ
๋์ฒด๋ก ์๊ฐ ๋ณต์ก๋์ ์๋ฏธ๋ ์ด๋ ์ต๋๋ค.
โ
O(1) : ๋จ์ ๊ณ์ฐ ( a + b)
O(log N) : n ๊ฐ๋ฅผ ์ ๋ฐ์ผ๋ก ๊ณ์ ๋ถํ
O(N) : ๋ฐ๋ณต๋ฌธ
O(N * log N)
O(N^2) : 2์ค ๋ฐ๋ณต๋ฌธ
O(N^3) : 3์ค ๋ฐ๋ณต๋ฌธ
O(2^N) : ํฌ๊ธฐ๊ฐ n์ธ ์งํฉ์ ๋ถ๋ถ ์งํฉ
O(N!) : ํฌ๊ธฐ๊ฐ n์ธ ์์ด
โ
์ฐ๋ฆฌ๋ ์ฐ๋ฆฌ๊ฐ ๋ง๋ ํ๋ก๊ทธ๋จ์ ์๊ฐ ๋ณต์ก๋๋ฅผ ๊ณ์ฐํ ์ค ์์์ผ ํฉ๋๋ค.
๊ทธ๋ผ ๋น
์ค ํ๊ธฐ๋ฒ์ ๋ฌด์์ธ๊ฐ?
๋น
์ค ํ๊ธฐ๋ฒ์ ๋จ์ํ ์๊ฐ ๋ณต์ก๋์์ ์์๋ฅผ ์ ๊ฑฐํ ๊ฒ์
๋๋ค. ์๋ฅผ ๋ค์ด,
โ
1) O(6 * N^2) => O(N^2)
2) O(2 * N^2 + 3 * N) => O(N^2)
3) O(3 *N + M) => O(N + M)
โ
์ด๋ ๊ฒ ๋ฐ๊พธ๋ ๊ฒ์
๋๋ค. 1)์์๋ N^2์ ์์๋ง ์ ๊ฑฐํ์์ต๋๋ค.
โ
ํ์ง๋ง 2)์์๋ N^2์ ์์๋ฟ๋ง ์๋๋ผ 3 * N๋ ์ ๊ฑฐํ ์ด์ ๋
๋ ํญ ์ค์ ๋ ํฐ ํญ์ ์ด๋ฆฌ๊ณ ๋๋จธ์ง ํญ์ ์ ๊ฑฐํ๊ธฐ ๋๋ฌธ์
๋๋ค.
โ
๊ฒ๋ค๊ฐ, ์๊ฐ ๋ณต์ก๋์ ๋ณ์๊ฐ 2๊ฐ ์ด์์ด๋ฉด ์์๋ง ์ ๊ฑฐํ๊ณ ๋ณ์๊ฐ ๋ค๋ฅผ ๋์๋ ๋ชจ๋ ๋ณ์๋ฅผ ์ ๊ฑฐํ์ง ์์ต๋๋ค.