์ ํด๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ ์ด๋? 2๊ฐ์ ์ ์ ๋๋ ๋ ๋คํญ์์ ์ต๋๊ณต์ฝ์๋ฅผ ๊ตฌํ๋ ๋ฐฉ๋ฒ์ด๋ค. ์๊ณ ๋ฆฌ์ฆ์ "A > B ์ผ๋ A์ B์ ์ต๋๊ณต์ฝ์๋ B์ ๋๋จธ์ง R์ ์ต๋๊ณต์ฝ์์ ๊ฐ๋ค." ํฐ ์(A)๋ฅผ ์์ ์(B)๋ก ๋๋๋ค. ( A > B ) ๋๋ ์(B)๋ฅผ A๋ก ๋์
๋๋จธ์ง(R)์ B๋ก ๋์
ํ์ฌ ๊ณ์ ๋๋ ์ค๋ค. ( A(B) % B(R) = (R)) ๋๋จธ์ง๊ฐ 0์ด ๋๋ค๋ฉด ์ด์ ์ B์ ๋์
ํ R์ด ์ต๋๊ณต์ฝ์์ด๋ค. ์์ 1071์ 1029๋ก ๋๋์ด ๋จ์ด์ง์ง ์๊ธฐ ๋๋ฌธ์, 1071์ 1029๋ก ๋๋ ๋๋จธ์ง๋ฅผ ๊ตฌํ๋ค. โซ 42 1029๋ 42๋ก ๋๋์ด ๋จ์ด์ง์ง ์๊ธฐ ๋๋ฌธ์, 1029๋ฅผ 42๋ก ๋๋ ๋๋จธ์ง๋ฅผ ๊ตฌํ๋ค. โซ 21 42๋ 21๋ก ๋๋์ด ๋จ์ด์ง๋ค. ๋ฐ๋ชฉ๋ฌธ const gcd =(a,b){ let tmp; while..
์๊ณ ๋ฆฌ์ฆ & ๋ฌธ์ ํ์ด/์๊ณ ๋ฆฌ์ฆ
Greedy Algorithm ์ด๋? ๋ง ๊ทธ๋๋ก ํ์์ค๋ฌ์ด, ์์ฌ ๋ง์ ์ด๋ผ๋ ๋ป์ด๋ค. ๋งค๋ฒ ์ ํ์ ํ ๋๋ง๋ค ํญ์ ์ต์ ์ ๋ฐฉ๋ฒ์ ์ ํํ๋ค. ๊ทธ๋ฆฌ๋๋ ๋งค ์ ํ(์ง์ญ์ )์ผ๋ก๋ ์ต์ ์ ํํ์ง๋ง ๊ทธ ์ ํ๋ค์ด ์ต์ข
(์ ์ญ์ )์ผ๋ก ๋ดค์ ๋ ์ต์ ์ด๋ผ๋ ๋ณด์ฅ์ ์๋ค. ๋งค์๊ฐ ์ต์ ์ ๋ฐ๋ผ๊ฐ๋ฉด ex) 1-1-1-100 ๋ณด๋ค๋ 1-1-10-10์ด ์ ์ฒด์ ์ผ๋ก ๋ดค์๋๋ ๋ ์งง์ ๊ธธ ์ด๊ธฐ ๋๋ฌธ. ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ ์์ฑ ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ์ด ์ฑ๋ฆฝํ๋ ค๋ฉด ๋๊ฐ์ง์ ์กฐ๊ฑด์ด ํ์ํ๋ค. ํ์ ์ ํ ์์ฑ (Greedy Choice Property) : ์ด์ ์ ์ ํ์ด ๋ค์ ์ ํ์ ์ํฅ์ ์ฃผ์ง ์๋๋ค. ์ต์ ๋ถ๋ถ ๊ตฌ์กฐ (optimal substructure) : ๋งค ์ ํ์ ์๊ฐ์ ์ต์ ์ด ์ ์ญ์ ์ ๋ํ ์ต์ ์ด์ด์ผ ํ๋ค. ์ดํด๋ฅผ ์ํ ์์ ๋ฐ ๋ฌธ์ ๋ง์..
์๋ผํ ์คํ
๋ค์ค์ ์ฒด ์๋ผํ ์คํ
๋ค์ค์ ์ฒด๋ ์์ ์ฐพ๊ธฐ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. "์์"๋ 1๊ณผ ์์ ์ด์ธ์ ์์ฐ์๋ก๋ ๋๋ ์ ์๋ ์์ฐ์์ด๋ค. ( 2, 5, 7 ๋ฑ) 1~100๊น์ง์ ์ซ์๋ฅผ ๋์ด. ์์๊ฐ ์๋ 1์ ์ ๊ฑฐ. 2๋ฅผ ์ ์ธํ 2์ ๋ฐฐ์๋ฅผ ์ ๊ฑฐ. 3์ ์ ์ธํ 3์ ๋ฐฐ์๋ฅผ ์ ๊ฑฐ. 4์ ๋ฐฐ์๋ 2์ ๋ฐฐ์๋ก ์ด๋ฏธ ์ง์์ก์ผ๋ฏ๋ก 5๋ฅผ ์ ์ธํ 5์ ๋ฐฐ์๋ฅผ ์ ๊ฑฐํ๋ค. 6๋ํ 3์ ๋ฐฐ์๋ก ์ง์์ก์ผ๋ฏ๋ก 7์ ์ ์ธํ 7์ ๋ฐฐ์๋ฅผ ์ ๊ฑฐ. 11 ๋ถํฐ๋ 11^2 > 100 ์ด๊ธฐ์ ์ง์ธ ํ์๊ฐ ์๋ค. ์ด๋ฐ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ฃผ์ด์ง n์ดํ์ ์์๋ฅผ ์ฐพ๊ณ ์ถ์ ๋ ์ฌ์ฉํ ์ ์๋ค. ์๋ฐ์คํฌ๋ฆฝํธ๋ก ๊ตฌํ function solution(n) { //n + 1 ๊ฐ์ ์์๋ฅผ ๊ฐ์ง ๋ฐฐ์ด ์์ฑ ๋ชจ๋ true๋ก ๋ณ๊ฒฝ ํ ์์์ ์ธ๊ฐ 0,1 ์ false..
์๊ฐ ๋ณต์ก๋๋ฅผ ๊ณ ๋ คํ ํ์ด? ๐ค ์ฝ๋ฉ ํ
์คํธ ๋ฌธ์ ๋ฅผ ์ฒ์ ํ์์ ๋ ๋ฌธ์ ๋ฅผ ํ๊ธฐ์ ๊ธ๊ธํ์ง๋ง ๋ง์ ํ
์คํธ์ ํต๊ณผํ๊ณ ๋ ํ ์ด ์ฝ๋๊ฐ ๋ง๋? ์ด๊ฒ ํจ์จ์ ์ธ๊ฐ?๋ผ๋ ์๊ฐ์ ํด๋ณธ ์ ์ด ์๋ค๋ฉด ์ด๋ฏธ ์๊ฐ ๋ณต์ก๋์ ๋ํด ๊ณ ๋ฏผํด ๋ณธ ๊ฒ์ด๋ ๋ค๋ฆ์๋ค! ์๊ฐ ๋ณต์ก๋๋ฅผ ๊ณ ๋ คํ๋ค๋ ๊ฑด ์
๋ ฅ๊ฐ์ ๋ฐ๋ผ ๋ก์ง์ด ์คํ๋๋ ์๊ฐ์ด ์ฆ๊ฐํ๊ณ ๊ฐ์ํ๋ ์๊ฐ์ ๋น์จ์ ์ต์ํํ์ฌ ๊ตฌ์ฑํ๋ค๋ ๋ป์ด๋ค. ์๊ฐ ๋ณต์ก๋๋ 3๊ฐ์ง์ ํ๊ธฐ๋ฒ์ด ์๋๋ฐ Big-O(๋น
-์ค) -> ์ต์
์ ๊ณ ๋ ค ( ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ์ต๋๋ฅผ ๊ณ ๋ ค ) Big-Ω(๋น
-์ค๋ฉ๊ฐ) -> ์ต์ ์ ๊ณ ๋ ค ( ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ์ต์ ์ ๊ณ ๋ ค ) Big-θ(๋น
-์ธํ) -> ํ๊ท ์ ๊ณ ๋ ค ( ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ํ๊ท ์ ๊ณ ๋ ค ) ์๊ฐ ๋ณต์ก๋์์ ๊ฐ์ฅ ์์ฃผ ์ฌ์ฉ๋๋ ํ๊ธฐ๋ฒ์ ๋น
์ค ํ๊ธฐ๋ฒ์ผ๋ก ์ต์
์ ๊ณ ๋ คํด์ผ ํ๋ค...