๋ฒ๋ธ ์ ๋ ฌ์ ๊ฐ๋ ๋ฒ๋ธ ์ ๋ ฌ์ด๋? ์๋ก ์ธ์ ํ ๋ ์์์ ๋์๋ฅผ ๋น๊ตํ๊ณ , ๋ ์์์ ์์น๊ฐ ๋ฐ๋์ด์ผ ํ๋ค๋ฉด ์๋ฆฌ๋ฅผ ๊ตํํ๋ฉฐ ์ ๋ ฌํ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ์ ํ ์ ๋ ฌ๊ณผ ๊ธฐ๋ณธ ๊ฐ๋ ์ด ์ ์ฌํ์ง๋ง, ๋ฒ๋ธ์ ๋ ฌ์ ์ ํ์ ๋ ฌ๊ณผ ๋ค๋ฅด๊ฒ SWAP์ด ๊ณ์์ ์ผ๋ก ์ผ์ด๋๋ค. ๋ฒ๋ธ ์ ๋ ฌ์ ๋์ ๋ฐฉ์๊ณผ ๊ตฌํ ๋์ ๋ฐฉ์ 1. n-1๊ฐ์ ๋ฐ์ดํฐ์ ์์น๋ง ์ฐพ์ผ๋ฉด ๋๋ฏ๋ก n-1๋ฒ ๋ฐ๋ณตํ๋ค. (n-1๊ฐ์ ๋ฐ์ดํฐ์ ์์น๊ฐ ์ ํด์ง๋ฉด ๋๋จธ์ง 1๊ฐ๋ ์๋ ์ ๋ ฌ) 1-1. ์์์๋ถํฐ ๋ฒ๋ธ์ฒ๋ผ ์ฌ๋ผ๊ฐ๋ฉฐ 2๊ฐ์ ๋ฐ์ดํฐ์ฉ ์ง์ง์ด ๋น๊ตํ๋ค. 1-1-1. 2๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋น๊ตํ์ฌ ์์น๊ฐ ๋ฐ๋์ด์ผ ํ๋ค๋ฉด SWAPํ๋ค. 1๋ฒ์ ํ๋ฒ ๋ฐ๋ณตํ ๋๋ง๋ค ์ ๋ ฌ๋์ง ์์ ๋ฐ์ดํฐ๋ค ์ค ๊ฐ์ฅ ํฐ ๊ฐ์ด ๋ค๋ก ์ด๋ํ๋ค. (์ฆ, ๋ฐ๋ณต ํ๋ฒ ๋น ํ๋์ ๋ฐ์ดํฐ๊ฐ ๋ฌด์กฐ๊ฑด ์ ๋ ฌ๋จ) ๊ตฌํ fo..
์ ํ ์ ๋ ฌ์ ๊ฐ๋ ์ ํ ์ ๋ ฌ์ด๋? ๋ฃ์ ์์น๋ ์ด๋ฏธ ์ ํด์ ธ ์๊ณ , ๊ทธ ์์น์ ์ด๋ ํ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์์ง ์ ํํ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๋์ ๋ฐฉ์ 1. ๋ฆฌ์คํธ ๊ธธ์ด(n)์ -1 ๋งํผ ๋ฐ๋ณตํ๋ค. (์์์๋ถํฐ ์์น๋ฅผ ์ ํ๊ฒ ๋๋ฉด ๋ง์ง๋ง ๊ฐ์ ์๋์ผ๋ก ์์น๊ฐ ์ ํด์ง๋ค) 1-2. ์ ํ๋ ์ต์๊ฐ๊ณผ ์ต์๊ฐ์ด ๋ค์ด๊ฐ ์์น์ ๊ฐ๊ณผ ๊ต์ฒดํ๋ค. 1-1. ๊ฐ์ด ๋ค์ด๊ฐ ์์น๋ถํฐ ๋ง์ง๋ง ๊ฐ๊น์ง ์ต์๊ฐ์ ์ฐพ๋๋ค. void sort() { int min; // 1. ๊ฐ์ด ๋ค์ด๊ฐ ์์น๋ฅผ ์ ํํ๋ ๋ฐ๋ณต๋ฌธ for(int i=0; i
ํธ๋์ญ์ ํธ๋์ญ์ ์ด๋? ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํ๋ฅผ ๋ณํ(SQL ์ง์์ด ์ฌ์ฉ)์ํค๊ธฐ ์ํด ์ํํ๋ ์์ ๋จ์ ์์ ๋จ์๋ SQL ๋ช ๋ น๋ฌธ๋ค๋ก ์ด๋ฃจ์ด์ ธ ์์ผ๋ฉฐ ๊ฐ๋ฐ์๊ฐ ์ ํ๋ ๊ธฐ์ค์ ๋ฐ๋ผ ๋ค๋ฆ ์์) ํ์ ์ ๋ณด ์์ ์ ์ฅ ๋ฒํผ ํด๋ฆญ : UPDATE๋ฌธ์ ์ด์ฉํ์ฌ ์ฌ์ฉ์ ์ ๋ณด ์์ ํ์ ์ ๋ณด ๊ตฌ์ฑ : SELECT๋ฌธ์ ์ด์ฉํ์ฌ ์ฌ์ฉ์ ์ ๋ณด ์ต์ ์ ์ง ์์ ๋จ์ : UPDATE + SELECT ํธ๋์ญ์ ํน์ง ์์์ฑ : DB์ ๋ชจ๋ ๋ฐ์๋๊ฑฐ๋, ์์ ๋ฐ์๋์ง ์๊ฑฐ๋ ์ผ๊ด์ฑ : ์์ ์ฒ๋ฆฌ ๊ฒฐ๊ณผ๋ ๋ ๊ฐ์์ผํจ ๋ ๋ฆฝ์ฑ : ํธ๋์ญ์ ์ ์ฐ์ฐ์ ๋ค๋ฅธ ํธ๋์ญ์ ์ด ๋ผ์ด๋ค ์ ์์ ์ง์์ฑ : ํธ๋์ญ์ ์ด ์ฑ๊ณต์ ์ผ๋ก ์๋ฃ๋์๋ค๋ฉด, ๊ทธ ๊ฒฐ๊ณผ๋ ์๊ตฌ์ ์ด์ฌ์ผํจ Commit๊ณผ Rollback Commit : ํ๋์ ํธ๋์ญ์ ์ด ์๋ฃ๋์์ผ๋ฉฐ, DB๊ฐ ์ผ..
์ถ์ํด๋์ค๋? ์ถ์ ๋ฉ์๋๋ฅผ ์ ์ธํ์ฌ ์์์ ํตํด์ ์์ ํด๋์ค์์ ์์ฑ์ ์ ๋ํ๋ ํด๋์ค์ด๋ค. ํ ๊ฐ ์ด์์ ์ถ์๋ฉ์๋๋ฅผ ๊ฐ์ง์ง๋ง ๊ตฌํ ๋ ๋ฉ์๋๋ ์ ์๊ฐ ๊ฐ๋ฅํ๋ค. ๋ฏธ์์ฑ ์ค๊ณ๋ ์์์ ์ํ ํด๋์ค์ด๊ธฐ ๋๋ฌธ์ ๋ฐ๋ก ๊ฐ์ฒด๋ฅผ ์์ฑํ ์ ์๋ค. ์ถ์๋ฉ์๋๋ ์ ์ธ๋ง๋๋ฉฐ ๊ตฌํ๋์ง ์์ ๋ถ์์ ํ ๋ฉ์๋์ด๋ฏ๋ก ๊ฐ์ฒด๋ฅผ ์์ฑํ์ง ๋ชปํ๋ค. ์ธํฐํ์ด์ค๋? ์์์ ์ถ์ ๋ฉ์๋์ ์งํฉ์ด๋ค. ์ฆ, ๋ก์ง์ ์์ฑํ ์ ์๋ค. ๊ธฐ๋ณธ ์ค๊ณ๋ ์ผ์ข ์ ์ถ์ ํด๋์ค๋ก, ์ถ์ ๋ฉ์๋๋ฅผ ๊ฐ์ง๋ง ์ถ์ ํด๋์ค๋ณด๋ค ์ถ์ํ ์ ๋๊ฐ ๋๋ค. ์ถ์ ํด๋์ค์ฒ๋ผ ๋ค๋ฅธ ํด๋์ค๋ฅผ ์์ฑํ๋๋ฐ ๋์์ ์ฃผ๋ ๋ชฉ์ ์ผ๋ก ์์ฑํ๋ค. ๋ค์ค ์์(๊ตฌํ)์ด ๊ฐ๋ฅํ๋ค. ์์ฑ์๋ฅผ ๊ฐ์ง ์ ์์ผ๋ฉฐ ๊ฐ์ฒดํ๊ฐ ๋ถ๊ฐ๋ฅํ๋ค. ์ถ์ํด๋์ค ์ธํฐํ์ด์ค ์ฐจ์ด์ ์ฌ์ฉ์๋ ์ฐจ์ด์ ์ถ์ํด๋์ค๋ IS ..
์ธํฐ๋ฝํธ (Interrupt) ์ธํฐ๋ฝํธ๋? ํ๋ก๊ทธ๋จ์ ์คํํ๋ ๋์ค์ ์๊ธฐ์น ์์ ์ํฉ์ด ๋ฐ์ํ ๊ฒฝ์ฐ ์คํ ์ค์ธ ์์ ์ ์ค๋จํ๊ณ , ์ํฉ์ ์ฒ๋ฆฌํ ํ ์คํ ์ค์ด๋ ์์ ์ผ๋ก ๋ณต๊ทํ์ฌ ๋ง์ ์ฒ๋ฆฌํ๋ ๊ฒ. ์ฆ, ์ง๊ธ๋ณด๋ค ์ค์ํ ์ผ์ด ๋ฐ์ํ๋ฉด ๊ทธ ์ผ์ ๋จผ์ ์ฒ๋ฆฌํ๋ ๊ฒ ์ธ๋ถ ์ธํฐ๋ฝํธ CPU์ ํ๋์จ์ด ์ ํธ์ ์ํด ๋ฐ์ ์ ์ถ๋ ฅ ์ฅ์น, ํ์ด๋ฐ ์์น, ์ ์ ๋ฑ ์ธ๋ถ์ ์์ธ์ ๋ฐ์ ์ ์ ์ด์, ๊ธฐ๊ณ ์ฐฉ์ค, ์ธ๋ถ ์ ํธ, ์ ์ถ๋ ฅ ๋ด๋ถ ์ธํฐ๋ฝํธ CPU์ ํ๋์จ์ด ์ ํธ์ ์ํด ๋ฐ์ Trap์ด๋ผ ๋ถ๋ฅด๋ฉฐ, ์๋ชป๋ ๋ช ๋ น์ด๋ ์๋ชป๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ ๋ ๋ฐ์ 0์ผ๋ก ๋๋๊ธฐ, ์ค๋ฒํ๋ก์ฐ, Exception.. SW ์ธํฐ๋ฝํธ ๋ช ๋ น์ด์ ์ํ์ ์ํด ๋ฐ์ ์ฌ์ฉ์๊ฐ ํ๋ก๊ทธ๋จ์ ์คํ์ํฌ ๋ ๋ฐ์ SW์ด์ฉ ์ค์ ๋ค๋ฅธ ํ๋ก์ธ์ค๋ฅผ ์คํ์ํค๋ฉด ์๋ถํ ์ฒ..