๐Ÿงช ์ปดํ“จํ„ฐ๊ณผํ•™ : CS

    [Alogrithm] ์‚ฝ์ž… ์ •๋ ฌ (Injection Sort)

    ์‚ฝ์ž… ์ •๋ ฌ (Injection Sort) ์‚ฝ์ž… ์ •๋ ฌ์€, ํ•œ ๋ฐฐ์—ด์„ '์•ž ๋ฐฐ์—ด'๊ณผ '๋’ท ๋ฐฐ์—ด'๋กœ ์ชผ๊ฐœ์–ด '๋’ท ๋ฐฐ์—ด'์˜ ์š”์†Œ๋ฅผ ์ •๋ ฌ๋œ '์•ž ๋ฐฐ์—ด'์— ๋“ค์–ด๊ฐˆ ์˜ฌ๋ฐ”๋ฅธ ์œ„์น˜๋ฅผ ์ฐพ์•„ ์‚ฝ์ž…ํ•˜๋Š” ์ •๋ ฌ์ด๋‹ค. ์ž˜ ์ดํ•ด๊ฐ€ ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ํ•˜๋‚˜์”ฉ ์„ค๋ช…์„ ํ•ด๋ณด๊ฒ ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ฃผ์–ด์ง„ ๋ฐฐ์—ด์ด ์žˆ๋‹ค๊ณ  ํ•˜์ž. array = [3, 4, 5, 2, 1, 6, 7] 3 4 5 2 1 6 7 ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ „, ์ฃผ์–ด์ง„ ๋ฐฐ์—ด์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋นจ๊ฐ„ ๋ถ€๋ถ„๊ณผ ํŒŒ๋ž€ ๋ถ€๋ถ„์œผ๋กœ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ๋นจ๊ฐ„ ๋ถ€๋ถ„์€ ์ด๋ฏธ ์ •๋ ฌ์ด ๋œ '์•ž ๋ฐฐ์—ด', ํŒŒ๋ž€ ๋ถ€๋ถ„์€ '์•ž ๋ฐฐ์—ด'์— ์‚ฝ์ž…์ด ๋˜๊ธฐ ์œ„ํ•ด ๋Œ€๊ธฐํ•˜๊ณ  ์žˆ๋Š” '๋’ท ๋ฐฐ์—ด'๋กœ ์ดํ•ดํ•˜๋ฉด ์ข‹๋‹ค. ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ '๋’ท ๋ฐฐ์—ด'์— ๋“ค์–ด์žˆ๋Š” ์ฒซ ๋ฒˆ์งธ ์›์†Œ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ฏ€๋กœ, ์ „์ฒด ๋ฐฐ์—ด๋กœ ์ƒ๊ฐํ•˜๋ฉด ๋‘ ๋ฒˆ์งธ ์š”์†Œ๋ถ€ํ„ฐ ์ •๋ ฌ ๋Œ€์ƒ์ด..

    [Algorithm] ์„ ํƒ ์ •๋ ฌ (Selection Sort)

    [Algorithm] ์„ ํƒ ์ •๋ ฌ (Selection Sort)

    ์„ ํƒ ์ •๋ ฌ (Selection Sort) ์„ ํƒ ์ •๋ ฌ์€, ๋ฐฐ์—ด์˜ ์ œ์ผ ์•ž์—์„œ๋ถ€ํ„ฐ ํ•ด๋‹น ์ž๋ฆฌ์— ๋“ค์–ด๊ฐˆ ์ˆซ์ž๋ฅผ ์„ ํƒํ•˜๋Š” ์ •๋ ฌ์ด๋‹ค. ๋“ค์–ด๊ฐˆ ์ˆซ์ž๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๊ฒƒ์€ ๋ฐฐ์—ด ๋‚ด์˜ ๋ชจ๋“  ์š”์†Œ๋ฅผ ๋น„๊ตํ•ด ๊ฐ€์žฅ ์ž‘์€ ๊ฒƒ์„ ์„ ํƒํ•œ๋‹ค. ๋‹ค์Œ loop ๋ถ€ํ„ฐ๋Š” ์ด๋ฏธ ์ž๋ฆฌ๊ฐ€ ๊ฒฐ์ •๋œ ์ˆซ์ž๋Š” ๋น„๊ตํ•˜์ง€ ์•Š๊ณ , ๋‚˜๋จธ์ง€ ์ˆ˜๋“ค ์ค‘์— ๋“ค์–ด๊ฐˆ ๊ฒƒ์„ ์ฐพ๊ธฐ๋ฅผ ๋ฐ˜๋ณตํ•œ๋‹ค. ์ฆ‰, 1๋ฒˆ์งธ loop์—์„œ๋Š” ๋ฐฐ์—ด์˜ ์ฒซ ๋ฒˆ์งธ ์ž๋ฆฌ์— ๋“ค์–ด๊ฐˆ ์›์†Œ๋ฅผ n๊ฐœ๋ฅผ ๋ชจ๋‘ ๋น„๊ตํ•ด ์„ ํƒํ•˜๊ณ , 2๋ฒˆ์งธ loop์—์„œ๋Š” ์ด๋ฏธ ๊ฒฐ์ •๋œ ์ฒซ ๋ฒˆ์งธ ์ž๋ฆฌ์˜ ์ˆซ์ž๋ฅผ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ n-1๊ฐœ๋ฅผ ๋น„๊ตํ•ด ๋‘ ๋ฒˆ์งธ ์ž๋ฆฌ์— ๋“ค์–ด๊ฐˆ ์ˆซ์ž๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค. 3๋ฒˆ์žฌ loop์—์„œ๋Š” ์ด๋ฏธ ๊ฒฐ์ •๋œ 1~2๋ฒˆ์งธ ์ž๋ฆฌ์˜ ์ˆซ์ž๋ฅผ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ n-2๊ฐœ๋ฅผ ๋น„๊ตํ•ด ์„ธ ๋ฒˆ์งธ ์ž๋ฆฌ์— ๋“ค์–ด๊ฐˆ ์ˆซ์ž๋ฅผ ๊ฒฐ์ •ํ•˜๊ณ , ๋ชจ๋“  ์ž๋ฆฌ์— ๋“ค์–ด๊ฐˆ ์ˆซ์ž๊ฐ€ ์ •ํ•ด..

    [Algorithm] ๋ฒ„๋ธ” ์ •๋ ฌ (Bubble Sort)

    [Algorithm] ๋ฒ„๋ธ” ์ •๋ ฌ (Bubble Sort)

    ๋ฒ„๋ธ” ์ •๋ ฌ (Bubble Sort) ๋ฒ„๋ธ” ์ •๋ ฌ์€, ์ด์›ƒํ•œ ๋‘ ์ˆซ์ž๋ฅผ ๊ณ„์†ํ•ด์„œ ๋น„๊ตํ•˜๋ฉฐ ์ •ํ•ด์ง„ ๊ทœ์น™์— ๋”ฐ๋ผ ์ž๋ฆฌ๋ฅผ ์Šค์œ„์นญํ•˜๋Š” ์ •๋ ฌ์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์˜ค๋ฆ„์ฐจ์ˆœ์ด๋ผ๋ฉด ์ด์›ƒํ•œ ๋‘ ์ˆซ์ž ์ค‘ ๋” ํฐ ์ˆซ์ž๊ฐ€ ๋’ท ์ž๋ฆฌ๋กœ ์ด๋™ํ•˜๋„๋ก ์„œ๋กœ ๋ฐ”๊ฟ”์ค€๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๋ฒ„๋ธ” ์ •๋ ฌ์ด๋ผ๋Š” ์ด๋ฆ„์ด ๋ถ™์€ ์ด์œ ๋Š” ๊ฐ€์žฅ ๊ฐ€๋ฒผ์šด ๊ฒƒ์ด ์œ„๋กœ ์˜ฌ๋ผ๊ฐ€๋Š” ๊ฑฐํ’ˆ์˜ ์›€์ง์ž„์— ๋น—๋Œ€์–ด ๋ถ™์—ฌ์ง„ ์ด๋ฆ„์ด๋ผ ํ•œ๋‹ค. (๊ทธ๋ ‡๊ฒŒ ๊ณต๊ฐ์ด ๊ฐ€์ง„ ์•Š๋Š”๋‹ค) ์œ„ ๊ทธ๋ฆผ์€ ๋ฒ„๋ธ” ์ •๋ ฌ์˜ switching ํ•˜๋Š” ๊ณผ์ •์„ ๋ณด์—ฌ์ฃผ๋Š” ๊ทธ๋ฆผ์ด๋‹ค. ์—ฐ์†๋œ ๋‘ ์ด์›ƒ์˜ ๊ฐ’์„ ๋น„๊ตํ•ด ๋” ๋†’์€ ๊ฐ’์„ ๋’ท์ž๋ฆฌ๋กœ ์Šค์œ„์นญํ•˜๊ฒŒ ๋œ๋‹ค. ํŠน์ง•์€, ํ•œ loop๊ฐ€ ๋Œ ๋•Œ๋งˆ๋‹ค, ์ œ์ผ ๋งˆ์ง€๋ง‰ ์ž๋ฆฌ์˜ ์ˆซ์ž๊ฐ€ ๊ฒฐ์ •๋œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๋‹ค์Œ loop๋Š” n-1๋ฒˆ์งธ ์ž๋ฆฌ์˜ ์ˆซ์ž๊ฐ€, ๊ทธ ๋‹ค์Œ์€ n-2๋ฒˆ์งธ ์ž๋ฆฌ์˜ ์ˆซ์ž๊ฐ€ ๊ฒฐ์ •๋œ๋‹ค๋Š” ํŠน์ง•์„ ์•Œ..