SourceCode
์ปดํจํฐ ๊ตฌ์กฐ์ ์ด์์ฒด์
๋ช
๋ น์ด - ์์ค ์ฝ๋์ ๋ช
๋ น์ด
๊ณ ๊ธ ์ธ์ด์ ์ ๊ธ ์ธ์ด
์ปดํจํฐ๋ ๋ช ๋ น์ด๋ฅผ ์ฒ๋ฆฌํ๋ ๊ธฐ๊ณ๋ผ๊ณ ํ ์ ์๊ณ , ๋ช ๋ น์ด๋ ์ปดํจํฐ๋ฅผ ์ค์ง์ ์ผ๋ก ์๋์ํค๋ ์ค์ํ ์ ๋ณด์ด๋ค.
์ฐ๋ฆฌ๊ฐ ํ๋ก๊ทธ๋จ์ ๋ง๋ค ๋ ์ฌ์ฉํ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด(C, Java, Python ๋ฑ)๋ ์ปดํจํฐ๊ฐ ์ดํดํ๋ ์ธ์ด๊ฐ ์๋ ์ฌ๋์ด ์ดํดํ๊ณ ์์ฑํ๊ธฐ ์ฝ๊ฒ ๋ง๋ค์ด์ง ์ธ์ด์ด๋ฉฐ, ์ด๋ ๊ฒ ์ฌ๋์ ์ํ ์ธ์ด๋ฅผ ๊ณ ๊ธ ์ธ์ด๋ผ๊ณ ํ๋ค.
๋ฐ๋๋ก ์ปดํจํฐ๊ฐ ์ง์ ์ดํดํ๊ณ ์คํํ ์ ์๋ ์ธ์ด๋ฅผ ์ ๊ธ ์ธ์ด๋ผ๊ณ ํ๋ค. ์ ๊ธ ์ธ์ด๋ ๋ช ๋ น์ด๋ก ์ด๋ฃจ์ด์ ธ ์์ผ๋ฉฐ, ์ปดํจํฐ๊ฐ ์ดํดํ๊ณ ์คํํ ์ ์๋ ์ธ์ด๋ ์ค์ง ์ ๊ธ ์ธ์ด๋ฟ์ด๋ค.
๊ทธ๋์ ๊ณ ๊ธ ์ธ์ด๋ก ์์ฑ๋ ์์ค ์ฝ๋๊ฐ ์คํ๋๋ ค๋ฉด ๋ฐ๋์ ์ ๊ธ ์ธ์ด, ์ฆ ๋ช ๋ น์ด๋ก ๋ณํ๋์ด์ผ ํ๋ค.
์ ๊ธ ์ธ์ด๋ ๊ธฐ๊ณ์ด์ ์ด์ ๋ธ๋ฆฌ์ด ๋ ์ข ๋ฅ๊ฐ ์๋ค.

๊ธฐ๊ณ์ด
๊ธฐ๊ณ์ด๋ 0๊ณผ 1์ ์ด์ง์ ๋๋ ์ญ์ก์ง์๋ก ํํํ๋ ์ธ์ด๋ค.
๊ธฐ๊ณ์ด๋ ์ค๋ก์ง ์ปดํจํฐ๋ง์ ์ํด ๋ง๋ค์ด์ง ์ธ์ด์ด๊ธฐ ๋๋ฌธ์ ์ฌ๋์ด ์ฝ์ผ๋ฉด ๊ทธ ์๋ฏธ๋ฅผ ์ดํดํ๊ธฐ ์ด๋ ต๋ค.
์ด์ ๋ธ๋ฆฌ์ด
์ด์ ๋ธ๋ฆฌ์ด๋ 0๊ณผ 1๋ก ํํ๋ ๋ช ๋ น์ด(๊ธฐ๊ณ์ด)๋ฅผ ์ฝ๊ธฐ ํธํ ํํ๋ก ๋ฒ์ญํ ์ธ์ด์ด๋ค.
0๊ณผ 1๋ก ์ด๋ฃจ์ด์ง ๊ธฐ๊ณ์ด๋ฅผ ์ฝ๊ธฐ ํธํ๊ฒ ๋ง๋ ์ ๊ธ ์ธ์ด์ผ ๋ฟ์ด๋ฏ๋ก, ๊ฐ๋ฐ์๊ฐ ์ง์ ์ด์ ๋ธ๋ฆฌ์ด๋ฅผ ์ด์ฉํด ๋ณต์กํ ํ๋ก๊ทธ๋จ์ ๋ง๋ค๊ธฐ๋ ์ฝ์ง ์๋ค.

์ปดํ์ผ ์ธ์ด์ ์ธํฐํ๋ฆฌํฐ ์ธ์ด
๊ฐ๋ฐ์๊ฐ ๊ณ ๊ธ ์ธ์ด๋ก ์์ฑํ ์์ค ์ฝ๋๋ ๊ฒฐ๊ตญ ์ ๊ธ ์ธ์ด๋ก ๋ณํ๋์ด ์คํ๋๋๋ฐ, ์ด๋ ์ปดํ์ผ ๋ฐฉ์๊ณผ ์ธํฐํ๋ฆฌํธ ๋ฐฉ์์ด ์๋ค.
์ปดํ์ผ ๋ฐฉ์์ผ๋ก ์๋ํ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ฅผ ์ปดํ์ผ ์ธ์ด, ์ธํฐํ๋ฆฌํธ ๋ฐฉ์์ผ๋ก ์๋ํ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ฅผ ์ธํฐํ๋ฆฌํฐ ์ธ์ด๋ผ๊ณ ํ๋ค.

์ปดํ์ผ ์ธ์ด

์ปดํ์ผ ์ธ์ด๋ ์ปดํ์ผ๋ฌ์ ์ํด ์์ค ์ฝ๋ ์ ์ฒด๊ฐ ์ ๊ธ ์ธ์ด๋ก ๋ณํ๋์ด ์คํ๋๋ ๊ณ ๊ธ ์ธ์ด์ด๋ค.(C, Java ๋ฑ)
์ปดํจํฐ๋ ๊ฐ๋ฐ์๊ฐ ๋ง๋ ์์ค ์ฝ๋๋ฅผ ์ดํดํ์ง ๋ชปํ๋ค. ๋๋ฌธ์ ์ปดํ์ผ ์ธ์ด๋ก ์์ฑ๋ ์์ค ์ฝ๋๋ ์ฝ๋ ์ ์ฒด๊ฐ ์ ๊ธ ์ธ์ด๋ก ๋ณํ๋๋ ๊ณผ์ ์ ๊ฑฐ์น๋๋ฐ, ์ด ๊ณผ์ ์ ์ปดํ์ผ(complie) ์ด๋ผ๊ณ ํ๋ฉฐ, ์ปดํ์ผ์ ์ํํด ์ฃผ๋ ๋๊ตฌ๋ฅผ ์ปดํ์ผ๋ฌ ๋ผ๊ณ ํ๋ค.
์ปดํ์ผ๋ฌ๋ ๊ฐ๋ฐ์๊ฐ ์์ฑํ ์์ค ์ฝ๋ ์ ์ฒด๋ฅผ ์ญ ํ์ด๋ณด๋ฉฐ ์์ค ์ฝ๋์ ๋ฌธ๋ฒ์ ์ธ ์ค๋ฅ๋ ์๋์ง, ์คํ ๊ฐ๋ฅํ ์ฝ๋์ธ์ง, ์คํํ๋ ๋ฐ ๋ถํ์ํ ์ฝ๋๋ ์๋์ง ๋ฑ์ ๋ฐ์ง๋ฉฐ ์์ค ์ฝ๋ ์ ์ฒด๋ฅผ ์ ๊ธ ์ธ์ด๋ก ์ปดํ์ผํ๋ค.
์ด๋ ์ปดํ์ผ๋ฌ๊ฐ ์์ค ์ฝ๋ ๋ด์์ ์ค๋ฅ๋ฅผ ํ๋๋ผ๋ ๋ฐ๊ฒฌํ๋ฉด ํด๋น ์์ค ์ฝ๋๋ ์ปดํ์ผ์ ์คํจํ๋ค.
์ปดํ์ผ๋ฆฌ ์ฑ๊ณต์ ์ผ๋ก ์ํ๋๋ฉด ์ปดํ์ผ๋ฌ๋ฅผ ํตํด ์ ๊ธ ์ธ์ด๋ก ๋ณํ๋ ์ฝ๋๋ฅผ ๋ชฉ์ ์ฝ๋๋ผ๊ณ ํ๋ค.
์ธํฐํ๋ฆฌํฐ ์ธ์ด
์ธํฐํ๋ฆฌํฐ ์ธ์ด๋ ์ธํฐํ๋ฆฌํฐ์ ์ํด ์์ค ์ฝ๋๊ฐ ํ ์ค์ฉ ์คํ๋๋ ๊ณ ๊ธ ์ธ์ด์ด๋ค.(Python ๋ฑ)
์์ค ์ฝ๋ ์ ์ฒด๊ฐ ์ ๊ธ ์ธ์ด๋ก ๋ณํ๋๋ ์ปดํ์ผ ์ธ์ด์๋ ๋ฌ๋ฆฌ, ์ธํฐํ๋ฆฌํฐ ์ธ์ด๋ ์์ค ์ฝ๋๋ฅผ ํ ์ค์ฉ ์ฐจ๋ก๋ก ์คํํ๋ค. ๊ทธ๋ฆฌ๊ณ ํ ์ค์ฉ ์ ๊ธ ์ธ์ด๋ก ๋ณํํ์ฌ ์คํํด ์ฃผ๋ ๋๊ตฌ๋ฅผ ์ธํฐํ๋ฆฌํฐ๋ผ๊ณ ํ๋ค.
๋๋ฌธ์ ์ธํฐํ๋ฆฌํฐ ์ธ์ด๋ ์์ค ์ฝ๋ ์ ์ฒด๋ฅผ ์ ๊ธ ์ธ์ด๋ก ๋ณํํ๋ ์๊ฐ์ ๊ธฐ๋ค๋ฆด ํ์๊ฐ ์๋ค.
๊ทธ๋ฆฌ๊ณ ์์ค ์ฝ๋ ๋ด์ ์ค๋ฅ๊ฐ ํ๋๋ผ๋ ์์ผ๋ฉด ์ปดํ์ผ์ด ๋ถ๊ฐ๋ฅํ๋ ์ปดํ์ผ ์ธ์ด์๋ ๋ฌ๋ฆฌ, ์ธํฐํ๋ฆฌํฐ ์ธ์ด๋ ์์ค ์ฝ๋๋ฅผ ํ ์ค์ฉ ์คํํ๊ธฐ ๋๋ฌธ์ ์์ค ์ฝ๋ N๋ฒ์งธ ์ค์ ์ค๋ฅ๊ฐ ์๋๋ผ๋ N-1๋ฒ์งธ ์ค๊น์ง๋ ์คํ์ด ๋๋ค.

์๊ฐ๊ณผ ๋ค๋ฅด๊ฒ ์ผ๋ฐ์ ์ผ๋ก ์ธํฐํ๋ฆฌํฐ ์ธ์ด๋ ์ปดํ์ผ ์ธ์ด๋ณด๋ค ๋๋ฆฌ๋ค.
์ปดํ์ผ์ ํตํด ๋์จ ๊ฒฐ๊ณผ๋ฌผ, ์ฆ ๋ชฉ์ ์ฝ๋๋ ์ปดํจํฐ๊ฐ ์ดํดํ๊ณ ์คํํ ์ ์๋ ์ ๊ธ ์ธ์ด์ธ ๋ฐ๋ฉด, ์ธํฐํ๋ฆฌํฐ ์ธ์ด๋ ๋ง์ง๋ง๊น์ง ํ ์ค์ฉ ์ ๊ธ ์ธ์ด๋ก ํด์ํ๋ฉฐ ์คํํด์ผ ํ๊ธฐ ๋๋ฌธ์ด๋ค.
์ปดํ์ผ ์ธ์ด๋ผ๊ณ ํด์ ์ธํฐํ๋ฆฌํธ๊ฐ ๋ถ๊ฐ๋ฅํ๊ฑฐ๋, ์ธํฐํ๋ฆฌํฐ ์ธ์ด๋ผ๊ณ ํด์ ์ปดํ์ผ์ด ๋ถ๊ฐ๋ฅ ํ ๊ฒ์ ์๋๋ค.
ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ ์ปดํ์ผ ์ธ์ด์ ์ธํฐํ๋ฆฌํฐ ์ธ์ด๋ก ๋ช ํํ๊ฒ ๊ตฌ๋ถ๋์ง ์๋๋ค.
'๊ณ ๊ธ ์ธ์ด๊ฐ ์ ๊ธ ์ธ์ด๋ก ๋ณํ๋๋ ๋ํ์ ์ธ ๋ฐฉ๋ฒ์๋ ์ปดํ์ผ ๋ฐฉ์๊ณผ ์ธํฐํ๋ฆฌํธ ๋ฐฉ์์ด ์๋ค' ์ ๋๋ก ์ดํดํ๋ ๊ฒ์ด ์ข๋ค.
๋ค์ โช๏ธ - ์ปดํจํฐ ๊ตฌ์กฐ(๋ช ๋ น์ด) - ๋ช ๋ น์ด ๊ตฌ์กฐ
Last updated