๋ค์ต์คํธ๋ผ ์๊ณ ๋ฆฌ์ฆ์ด ๋ญ๊น? ๋ค์ต์คํธ๋ผ ์๊ณ ๋ฆฌ์ฆ์ด๋ ํ๋์ ์ถ๋ฐ์ ์์ ๋๋ฌํ ์ ์๋ ๋ชจ๋ ๋์ฐฉ์ ์ ๋ํ ์ต๋จ ๊ฒฝ๋ก๋ฅผ ๊ตฌํ ์ ์๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๋์ ์กฐ๊ฑด์ด ์๋๋ฐ ๋ค์ต์คํธ๋ผ ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ์ ๋ค์ ๋น์ฉ์ด ๋ชจ๋ ์์์ฌ์ผ๋ง ์ ์ฉ์ด ๊ฐ๋ฅํ๋ค. ๋ง์ฝ ์์ ๋น์ฉ์ ๊ฐ์ง ๊ฐ์ ์ด ์กด์ฌํ๋ค๋ฉด ์ต๋จ ๊ฒฝ๋ก๋ฅผ ๊ตฌํ ์ ์๋ค. ๋ค์ต์คํธ๋ผ ์๊ณ ๋ฆฌ์ฆ๊ณผ ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ ๋ค์ต์คํธ๋ผ ์๊ณ ๋ฆฌ์ฆ์ ๋ฉ์ธ ์์ด๋์ด๋ ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ(DP)์ด๋ค. ๋ค์ต์คํธ๋ผ ์๊ณ ๋ฆฌ์ฆ์ ๊ธฐ์กด์ ๊ตฌํด๋์ ์ต๋จ ๊ฑฐ๋ฆฌ๋ฅผ ์ด์ฉํ์ฌ ์ต๋จ ๊ฑฐ๋ฆฌ๋ฅผ ๊ฐฑ์ ํด๋๊ฐ๋ ๋ฉ์ธ ์์ด๋์ด๋ฅผ ๊ฐ์ง๊ณ ์๋ค. (์ต๋จ ๊ฒฝ๋ก๋ ์ต๋จ ๊ฒฝ๋ก๋ค์ ์งํฉ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์๋ค) ๋ค์ต์คํธ๋ผ ์๊ณ ๋ฆฌ์ฆ์ ๋ณต์ก๋ (์ข ๋ ์์ธํ ์์๋ณผ ๊ฒ) ์๋ ๋ค์ต์คํธ๋ผ ์๊ณ ๋ฆฌ์ฆ์ O(V^2)์ ์๊ฐ ๋ณต์ก๋๋ฅผ ๊ฐ์ง๊ณ ์์์ง..
ํ ์ด๋ธ์ ๋ํด ์ ๊ทํ๋ฅผ ํด์ผํ๋ ์ด์ ๋ Anomaly(์ด์ ํ์)์ด ๋ํ๋๊ธฐ ๋๋ฌธ์ด๋ค. ์ฝ์ ์ด์ ๋ถํ์ํ ์ ๋ณด๋ฅผ ํจ๊ป ์ ์ฅํ์ง ์๊ณ ์๋ ์ด๋ค ์ ๋ณด๋ฅผ ์ ์ฅํ๋ ๊ฒ์ด ๋ถ๊ฐ๋ฅํ ๊ฒฝ์ฐ Faculty and Courses ํ ์ด๋ธ์ Course Code๊ฐ ์๋ Faculty์ธ ๊ฒฝ์ฐ ์ด๋ป๊ฒ ์ฝ์ ํด์ผ ํ ๊น? → ์์์ ํ์ํ๋ ๋ถํ์ํ ์ ๋ณด๊ฐ ์ฝ์ ๋์ด์ผํจ! ๊ฐฑ์ ์ด์ ์ผ๋ถ๋ง ๋ณ๊ฒฝํ์ฌ, ๋ฐ์ดํฐ๊ฐ ๋ถ์ผ์น ํ๋ ๊ฒฝ์ฐ ๊น์ฌ๋ → ๊น์์ฐ์ผ๋ก ๋ฐ๊พธ๋ ๊ฒฝ์ฐ ๋ชจ๋ ๊น์ฌ๋์ด ๊น์์ฐ์ผ๋ก ๋ฐ๋์ด์ผ๋ง ํ๋ค. → ์ฒซ๋ฒ์งธ ํํ๊ณผ ์ธ๋ฒ์งธ ํํ ๊ฐ์ ๋ฐ์ดํฐ ๋ถ์ผ์น ๋ฐ์ ์ญ์ ์ด์ ํํ ์ญ์ ๋ก ์ธํด ๊ผญ ํ์ํ ๋ฐ์ดํฐ๊น์ง ํจ๊ป ์ญ์ ๋๋ ๊ฒฝ์ฐ ENG-206 ๊ฐ์๋ฅผ ์ ๊ฑฐํ๋ ค๊ณ 389๋ฒ ํํ์ ์ ๊ฑฐํ๋๋ Dr.Giddens์ ์ ๋ณด๋ ์ญ์ ๋์๋ค. → ๊ผญ..
๊ธฐ์ ์ ๋ ฌ์ด๋? ๋ฎ์ ์๋ฆฌ์๋ถํฐ ๋น๊ตํ์ฌ ์ ๋ ฌํด๊ฐ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ฉฐ ๋น๊ต ์ฐ์ฐ์ด ๋ถํ์ํ ์ ๋ ฌ์ด๋ค. ์๋ฆฟ์์ ํด๋น๋๋ ๊ฐ์ ๋ฐ๋ผ ๋ฒํท์ ๋ฐ์ดํฐ๋ค์ ์ฝ์ ํ๊ธฐ ๋๋ฌธ์ ๋น๊ต ์ฐ์ฐ์ด ๋ถํ์ํ์ง๋ง ์๋ฆฟ์๋งํผ์ ์ถ๊ฐ์ ์ธ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ด ํ์ํ๋ค. (๋ํ ์๋ฆฟ์๋งํผ์ ์ถ๊ฐ์ ์ธ ๋ก์ง๋ ํ์ํ๋ค) ์๋ฆฟ์๊ฐ ๋น์ ์์ ์ผ๋ก ํฐ ๋ฐ์ดํฐ๊ฐ ์กด์ฌํ๋ค๋ฉด ์ธ๋ฐ์๋ ๋ฉ๋ชจ๋ฆฌ์ ํฌ๊ธฐ๋ฅผ ์ฐจ์งํ๊ฒ ๋๋ค. ๊ตฌํ๊ณผ ์๊ฐ ๋ณต์ก๋ ์๋ฐ๋ฅผ ์ด์ฉํ ๊ตฌํ public static void main(String[] args) { RadixSort radixSort = new RadixSort(); for(int i=0; i
์ต๋ ๊ณต์ฝ์ ๊ตฌํ๊ธฐ ์ ํด๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋? ์ต๋ ๊ณต์ฝ์(GCD)๋ฅผ ๊ตฌํ ์ ์๋ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก, gcd(a,b)์ (r=a%b๋ผ๊ณ ํ ๋), gcd(b,r)์ ์ต๋ ๊ณต์ฝ์๋ ๊ฐ๋ค. ์ฆ, gcd(a,b) == gcd(b,r)์ด๋ค. ์ด ์ฑ์ง์ ๋ฐ๋ผ gcd(a,b) == gcd(b, a%b) == gcd(a%b, (a%b)%b).... ๋ฐ๋ณตํ์ฌ ๋๋จธ์ง๊ฐ 0์ด ๋์์ ๋ ๋๋์ด์ง๋ ์๊ฐ a์ b์ ์ต๋๊ณต์ฝ์๊ฐ ๋๋ค. ์ ๋ฆฌํ์๋ฉด gcd(a,b) -> cdg(a, a%b) .... -> gcd(x, 0)์ด๋ฉด a์ b์ ์ต๋ ๊ณต์ฝ์๋ x์ด๋ค. ๊ตฌํ private static int gcd(int a, int b) { if(b == 0) return a; return gcd(b, a%b); } ์ต์ ๊ณต๋ฐฐ์๋ฅผ ๊ตฌํ๋ ๋ฐฉ๋ฒ..
ํ๋ก์ธ์ค vs ํ๋ก๊ทธ๋จ ํ๋ก๊ทธ๋จ : ํน์ ์์ ์ ์ํํ๊ธฐ ์ํ ์ฝ๋๋ค์ ๋ชจ์ ํ๋ก์ธ์ค : ํ๋ก๊ทธ๋จ์ด ์ปค๋์ ๋ฑ๋ก๋ ์ํ๋ฅผ ํ๋ก์ธ์ค๋ผ๊ณ ํ๋ค. ์ฑ๋ฅ ํฅ์์ ์ํด ์ปค๋์ด ํ๋ก์ธ์ค๋ฅผ ๊ด๋ฆฌํ๋ค. JOB : ํ๋ก๊ทธ๋จ + ๋ฐ์ดํฐ ํ๋ก์ธ์ค๋? ์ปค๋์ ๋ฑ๋ก๋ ์ปค๋์ ๊ด๋ฆฌํ์ ์๋ ํ๋ก๊ทธ๋จ ๊ฐ์ข ์์์ ์์ฒญํ๊ณ ํ ๋น๋ฐ์ ์ ์๋ ๋์ ๊ฐ์ฒด PCB๋ฅผ ํ ๋น ๋ฐ์ ๊ฐ์ฒด PCB๋? ์ปค๋๋ด์ ์กด์ฌํ๋ฉฐ, ํ๋ก์ธ์ค์ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์๋ค. PCB์๋ ๋ค์๊ณผ ๊ฐ์ ํ๋๊ฐ ์กด์ฌํ๋ค. ์ค์ผ์ค๋ง ์ ๋ณด ํ๋ก์ธ์ค ์ํ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ์ ๋ณด ์ ์ถ๋ ฅ ์ํ ์ ๋ณด ๋ฌธ๋งฅ ์ ์ฅ ์์ญ ๊ณ์ ์ ๋ณด(๋ค์ค ์์คํ ์ธ ๊ฒฝ์ฐ๋ฅผ ์ํ ์ ๋ณด) ํ๋ก์ธ์ค ์ํ Created State (-> ready or suspended ready) ํ๋ก๊ทธ๋จ์ ์ปค๋์ ๋ฑ๋กํ ์ํ, PCB๋ฅผ..