2ํ์ด์ง๋ฅผ ํตํด ๋ณด์๋ฏ์ด ์ ๋ ฅ์ ๋ฐ๋ผ ์๊ณ ๋ฆฌ์ฆ์ ๋ฐํ์์ด ์ด๋ป๊ฒ ์ฆ๊ฐํ๋์ง์ ๋ํ ๊ฒ์ด ๋ฐ๋ก Big O์ด๋ค.
์ฆ ์ ๋ ฅ๊ณผ ํด๋น ์ ๋ ฅ์ ๋ฐ๋ฅธ ์๋์ ์ธ ์๊ฐ ๊ฐ์ ๊ด๊ณ์ด๋ค.
๋ค์ํ ๊ธฐ๋ณธ์ ์ธ ํ๊ธฐ๋ฒ์ด ์กด์ฌํ๋ค.
์์ ๊ทธ๋ํ๋ ๋ธ๋ก๊ทธ๋ฅผ ํ์ํ๋ฉฐ ๋น ์ค์ ๊ฐ๋ ์ ์ ๋ฆฌํ ๊ธ์ ์ฐพ์๋ณด๋ค ์ฐพ๊ฒ๋ ๊ทธ๋ํ์ด๋ค.
๋น ์ค ํ๊ธฐ๋ฒ์์ ์ฃผ๋ก ์ฌ์ฉ๋๋ ํ๊ธฐ๋ฒ์ ์๊ฐ ๋ณต์ก๋์ ์ฑ๋ฅ์ ๋น๊ตํ๋ ๊ทธ๋ํ๋ก
์์ํจ์๊ฐ ๊ฐ์ฅ ํจ์จ์ฑ์ด ์ข๊ณ ์ง์ํจ์๊ฐ ํจ์จ์ฑ์ด ์ ์ผ ๋จ์ด์ง๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
๋น ์ค ํ๊ธฐ๋ฒ์ ํ๊ธฐ๋ฒ๋ค์ ๋ํ ์๊ณ ๋ฆฌ์ฆ์ ๊ด๋ จ์ ๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
์ด๋ฅผ ํตํด์ ๋๋ต ๊ธฐ๋ณธ์ ์ธ ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐ ํจ์จ์ฑ์ ๋ํด์๋ ์๊ฐํด๋ณผ ์ ์๊ฒ ๋ค ์ถ์๋ค.
๊ทธ๋ผ ์ด์ด์ solution2์ addUpTo(n)
ํจ์๋ ์ด๋ค ๋น
์ค ํํ์์ ํด๋น๋ ๊น?
//solution2
function addUpToN(n) {
return n * (n + 1) / 2;
}
solution2์ ํจ์๋ ํญ์ 3๊ฐ์ ์ฐ์ฐ์ ์ํํ์ฌ n
์ ์
๋ ฅ๊ณผ ๊ด๋ จ์์ด ํญ์ ๊ณ ์ ์ ์ธ ์ฐ์ฐ์ ์ํํ๋ฏ๋ก O(1)
์ ํด๋นํ๋ ์์ํจ์์ ํด๋นํ ๊ฒ์ด๋ค.
solution1์ ๊ฒฝ์ฐ for
๋ฌธ์ด ์กด์ฌํ์ฌ n
์ ๊ฐ์ ๋ฐ๋ผ ์ฆ๊ฐํ๋ค. ์ฐ๋ฆฌ๋ ์ด๋ฅผ 5n+2
๋ก ์ ๋ฆฌํ์๋ค. ๊ทธ๋ ๋ค๋ฉด ๋น
์ค ํ๊ธฐ๋ฒ์ O(5n+2) ๋ก ์ ์ํ ์ ์์๊น? ๊ฒฐ๋ก ์ ๊ทธ๋ ์ง ์๋ค.
์ด๋ ๋น ์ค ํ๊ธฐ๋ฒ์ ๋จ์ํ์์ ์ดํด๋ณด์.
์ฐธ๊ณ ์๋ฃ
Big O Notation(๋น ์ค ํ๊ธฐ๋ฒ) #6 (0) | 2022.02.25 |
---|---|
Big O Notation(๋น ์ค ํ๊ธฐ๋ฒ) #5 (0) | 2022.02.25 |
Big O Notation(๋น ์ค ํ๊ธฐ๋ฒ) #4 (0) | 2022.02.25 |
Big O Notation(๋น ์ค ํ๊ธฐ๋ฒ) #2 (0) | 2022.02.25 |
Big O Notation(๋น ์ค ํ๊ธฐ๋ฒ) (1) (0) | 2022.02.25 |