๐งช ์ปดํจํฐ๊ณผํ : CS
[Alogrithm] ์ฝ์ ์ ๋ ฌ (Injection Sort)
์ฝ์ ์ ๋ ฌ (Injection Sort) ์ฝ์ ์ ๋ ฌ์, ํ ๋ฐฐ์ด์ '์ ๋ฐฐ์ด'๊ณผ '๋ท ๋ฐฐ์ด'๋ก ์ชผ๊ฐ์ด '๋ท ๋ฐฐ์ด'์ ์์๋ฅผ ์ ๋ ฌ๋ '์ ๋ฐฐ์ด'์ ๋ค์ด๊ฐ ์ฌ๋ฐ๋ฅธ ์์น๋ฅผ ์ฐพ์ ์ฝ์ ํ๋ ์ ๋ ฌ์ด๋ค. ์ ์ดํด๊ฐ ๋์ง ์์ ์ ์์ผ๋ฏ๋ก, ํ๋์ฉ ์ค๋ช ์ ํด๋ณด๊ฒ ๋ค. ๋ค์๊ณผ ๊ฐ์ด ์ฃผ์ด์ง ๋ฐฐ์ด์ด ์๋ค๊ณ ํ์. array = [3, 4, 5, 2, 1, 6, 7] 3 4 5 2 1 6 7 ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ ์ , ์ฃผ์ด์ง ๋ฐฐ์ด์ ๋ค์๊ณผ ๊ฐ์ด ๋นจ๊ฐ ๋ถ๋ถ๊ณผ ํ๋ ๋ถ๋ถ์ผ๋ก ๋ณผ ์ ์๋ค. ๋นจ๊ฐ ๋ถ๋ถ์ ์ด๋ฏธ ์ ๋ ฌ์ด ๋ '์ ๋ฐฐ์ด', ํ๋ ๋ถ๋ถ์ '์ ๋ฐฐ์ด'์ ์ฝ์ ์ด ๋๊ธฐ ์ํด ๋๊ธฐํ๊ณ ์๋ '๋ท ๋ฐฐ์ด'๋ก ์ดํดํ๋ฉด ์ข๋ค. ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ '๋ท ๋ฐฐ์ด'์ ๋ค์ด์๋ ์ฒซ ๋ฒ์งธ ์์๋ถํฐ ์์ํ๋ฏ๋ก, ์ ์ฒด ๋ฐฐ์ด๋ก ์๊ฐํ๋ฉด ๋ ๋ฒ์งธ ์์๋ถํฐ ์ ๋ ฌ ๋์์ด..
[Algorithm] ์ ํ ์ ๋ ฌ (Selection Sort)
์ ํ ์ ๋ ฌ (Selection Sort) ์ ํ ์ ๋ ฌ์, ๋ฐฐ์ด์ ์ ์ผ ์์์๋ถํฐ ํด๋น ์๋ฆฌ์ ๋ค์ด๊ฐ ์ซ์๋ฅผ ์ ํํ๋ ์ ๋ ฌ์ด๋ค. ๋ค์ด๊ฐ ์ซ์๋ฅผ ๊ฒฐ์ ํ๋ ๊ฒ์ ๋ฐฐ์ด ๋ด์ ๋ชจ๋ ์์๋ฅผ ๋น๊ตํด ๊ฐ์ฅ ์์ ๊ฒ์ ์ ํํ๋ค. ๋ค์ loop ๋ถํฐ๋ ์ด๋ฏธ ์๋ฆฌ๊ฐ ๊ฒฐ์ ๋ ์ซ์๋ ๋น๊ตํ์ง ์๊ณ , ๋๋จธ์ง ์๋ค ์ค์ ๋ค์ด๊ฐ ๊ฒ์ ์ฐพ๊ธฐ๋ฅผ ๋ฐ๋ณตํ๋ค. ์ฆ, 1๋ฒ์งธ loop์์๋ ๋ฐฐ์ด์ ์ฒซ ๋ฒ์งธ ์๋ฆฌ์ ๋ค์ด๊ฐ ์์๋ฅผ n๊ฐ๋ฅผ ๋ชจ๋ ๋น๊ตํด ์ ํํ๊ณ , 2๋ฒ์งธ loop์์๋ ์ด๋ฏธ ๊ฒฐ์ ๋ ์ฒซ ๋ฒ์งธ ์๋ฆฌ์ ์ซ์๋ฅผ ์ ์ธํ ๋๋จธ์ง n-1๊ฐ๋ฅผ ๋น๊ตํด ๋ ๋ฒ์งธ ์๋ฆฌ์ ๋ค์ด๊ฐ ์ซ์๋ฅผ ๊ฒฐ์ ํ๋ค. 3๋ฒ์ฌ loop์์๋ ์ด๋ฏธ ๊ฒฐ์ ๋ 1~2๋ฒ์งธ ์๋ฆฌ์ ์ซ์๋ฅผ ์ ์ธํ ๋๋จธ์ง n-2๊ฐ๋ฅผ ๋น๊ตํด ์ธ ๋ฒ์งธ ์๋ฆฌ์ ๋ค์ด๊ฐ ์ซ์๋ฅผ ๊ฒฐ์ ํ๊ณ , ๋ชจ๋ ์๋ฆฌ์ ๋ค์ด๊ฐ ์ซ์๊ฐ ์ ํด..
[Algorithm] ๋ฒ๋ธ ์ ๋ ฌ (Bubble Sort)
๋ฒ๋ธ ์ ๋ ฌ (Bubble Sort) ๋ฒ๋ธ ์ ๋ ฌ์, ์ด์ํ ๋ ์ซ์๋ฅผ ๊ณ์ํด์ ๋น๊ตํ๋ฉฐ ์ ํด์ง ๊ท์น์ ๋ฐ๋ผ ์๋ฆฌ๋ฅผ ์ค์์นญํ๋ ์ ๋ ฌ์ด๋ค. ์๋ฅผ ๋ค์ด, ์ค๋ฆ์ฐจ์์ด๋ผ๋ฉด ์ด์ํ ๋ ์ซ์ ์ค ๋ ํฐ ์ซ์๊ฐ ๋ท ์๋ฆฌ๋ก ์ด๋ํ๋๋ก ์๋ก ๋ฐ๊ฟ์ค๋ค๋ ๊ฒ์ด๋ค. ๋ฒ๋ธ ์ ๋ ฌ์ด๋ผ๋ ์ด๋ฆ์ด ๋ถ์ ์ด์ ๋ ๊ฐ์ฅ ๊ฐ๋ฒผ์ด ๊ฒ์ด ์๋ก ์ฌ๋ผ๊ฐ๋ ๊ฑฐํ์ ์์ง์์ ๋น๋์ด ๋ถ์ฌ์ง ์ด๋ฆ์ด๋ผ ํ๋ค. (๊ทธ๋ ๊ฒ ๊ณต๊ฐ์ด ๊ฐ์ง ์๋๋ค) ์ ๊ทธ๋ฆผ์ ๋ฒ๋ธ ์ ๋ ฌ์ switching ํ๋ ๊ณผ์ ์ ๋ณด์ฌ์ฃผ๋ ๊ทธ๋ฆผ์ด๋ค. ์ฐ์๋ ๋ ์ด์์ ๊ฐ์ ๋น๊ตํด ๋ ๋์ ๊ฐ์ ๋ท์๋ฆฌ๋ก ์ค์์นญํ๊ฒ ๋๋ค. ํน์ง์, ํ loop๊ฐ ๋ ๋๋ง๋ค, ์ ์ผ ๋ง์ง๋ง ์๋ฆฌ์ ์ซ์๊ฐ ๊ฒฐ์ ๋๋ค๋ ๊ฒ์ด๋ค. ๋ค์ loop๋ n-1๋ฒ์งธ ์๋ฆฌ์ ์ซ์๊ฐ, ๊ทธ ๋ค์์ n-2๋ฒ์งธ ์๋ฆฌ์ ์ซ์๊ฐ ๊ฒฐ์ ๋๋ค๋ ํน์ง์ ์..