๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • ์žฅ์›์ต ๊ธฐ์ˆ ๋ธ”๋กœ๊ทธ

๐Ÿ’ป Computer Science/- Data Structure, Algorithm147

[์•Œ๊ณ ๋ฆฌ์ฆ˜-์ด๋ก ] ์‚ฝ์ž… ์ •๋ ฌ (Insertion Sort) ์‚ฝ์ž… ์ •๋ ฌ(Insertion Sort) ์ด๋ž€? ์ด๋ฏธ ์ •๋ ฌ๋˜์–ด ์žˆ๋Š” i๊ฐœ ์งœ๋ฆฌ์˜ ๋ฐฐ์—ด์— ํ•˜๋‚˜์˜ ์›์†Œ๋ฅผ ๋” ๋”ํ•˜์—ฌ ์ •๋ ฌ๋œ i+1 ๊ฐœ์˜ ๋ฐฐ์—ด์„ ๋งŒ๋“œ๋Š” ๊ณผ์ •์„ A[n] ๊นŒ์ง€ ๋ฐ˜๋ณตํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ด๋‹ค. ์ฐจ์ด์ ์ด ์žˆ๋‹ค๋ฉด ์ง€๊ธˆ๊นŒ์ง€ ํ–ˆ๋˜ ์„ ํƒ ์ •๋ ฌ ์ด๋‚˜ ๋ฒ„๋ธ” ์ •๋ ฌ์€ n ๊ฐœ์˜ ๋ฐฐ์—ด์—์„œ ์‹œ์ž‘ํ•˜์—ฌ ํ•˜๋‚˜์”ฉ ์›์†Œ๋ฅผ ์ค„์ด๋Š”๋ฐ ๋ฐ˜ํ•˜์—ฌ ์‚ฝ์ž… ์ •๋ ฌ์€ ๊ทธ ํฌ๊ธฐ๋ฅผ ํ•˜๋‚˜์”ฉ ๋Š˜๋ฆฌ๋Š” ์ •๋ ฌ์ด๋‹ค. ํ•˜์ง€๋งŒ ์„ ํƒ ์ •๋ ฌ์ด๋‚˜ ๋ฒ„๋ธ” ์ •๋ ฌ์— ๋น„ํ•˜์—ฌ ๊ตฌํ˜„ํ•˜๊ธฐ ์กฐ๊ธˆ ๊นŒ๋‹ค๋กญ๋‹ค๋Š” ์ ์ด ์žˆ๋‹ค. ๋ฐฑ๋ฌธ์ด ๋ถˆ์—ฌ์ผํƒ€ ๋ผ๊ณ  pseudo ์ฝ”๋“œ๋ฅผ ํ•œ ๋ฒˆ ๊ฐ€๋ณ๊ฒŒ ๋ณด๊ณ  ์ง์ ‘ ์ƒ๊ฐํ•ด๋ณด์ž. insertionSort(A[], n){ .... 1 for i A[i-1] ์ด๋ฉด A[i]๋Š” A[1..i-1] ์˜ ๋ชจ๋“  ์›์†Œ๋ณด๋‹ค ํฌ๋ฏ€๋กœ ๊ทธ๋ƒฅ ์ œ์ž๋ฆฌ์— ๋‘๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์„ ๊ฒฝ์šฐ ์™ผ์ชฝ๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ A[i].. 2019. 11. 23.
[์•Œ๊ณ ๋ฆฌ์ฆ˜-์ด๋ก ] ๋ฒ„๋ธ” ์ •๋ ฌ (Bubble Sort) ๋ฒ„๋ธ” ์ •๋ ฌ (Bubble Sort)์ด๋ž€? ๋ฒ„๋ธ” ์ •๋ ฌ์€ ์ธ์ ‘ํ•œ ๋‘ ์›์†Œ๋ฅผ ๋น„๊ตํ•˜์—ฌ ํฐ/์ž‘์€ ์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ž๋ฆฌ๋ฅผ ๊ตํ™˜ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ •๋ ฌํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋œปํ•œ๋‹ค. ์„ ํƒ์ •๋ ฌ๊ณผ ๊ฐ™์ด ์ œ์ผ ํฐ ์›์†Œ๋ฅผ ๋์ž๋ฆฌ๋กœ ์˜ฎ๊ธฐ๋Š” ์ž‘์—…์„ ๋ฐ˜๋ณตํ•˜๋Š”๋ฐ ์ œ์ผ ํฐ ์›์†Œ๋ฅผ ์˜ฎ๊ธฐ๋Š” ๋ฐฉ๋ฒ•์˜ ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค. ๋ฒ„๋ธ”์ •๋ ฌ์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ์„ค๋ช…ํ•˜์ž๋ฉด. ๋ผ์šด๋“œ์˜ ์ˆœ์„œ๋ณ„๋กœ ์ž„์˜์˜ ํฌ์ธํ„ฐ๋ฅผ ๋งŒ๋“ค์–ด ๋’ท ๊ฐ’๊ณผ ๋น„๊ต๋ฅผ ํ•˜๋Š” ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•œ๋‹ค. ๋งŒ์•ฝ ๋’ท ๊ฐ’๋ณด๋‹ค ํฌ๊ฒŒ๋˜๋ฉด ์ž๋ฆฌ๋ฅผ ์˜ฎ๊ฒจ ๊ทธ ๋‹ค์Œ ๊ฐ’๊ณผ ๋น„๊ตํ•˜๊ณ  ํฌ์ง€ ์•Š๋‹ค๋ฉด ํฌ์ธํ„ฐ๋ฅผ ๋’ค๋กœ ๋„˜๊ฒจ ํฌ์ธํ„ฐ๊ฐ€ ์ •๋ ฌ๋˜์ง€ ์•Š์€ ๋ฐฐ์—ด์˜ ๋๊นŒ์ง€ ๋„๋‹ฌํ–ˆ์„ ๋•Œ ํ•œ ๋ผ์šด๋“œ๊ฐ€ ์ข…๋ฃŒ๋œ๋‹ค. pseudo ์ฝ”๋“œ๋ฅผ ๋จผ์ € ๋ณด์ž๋ฉด bubbleSort(A[], n){ .... 1 for last 7๊ณผ 22์ค‘ 22๊ฐ€ ๋” ํฌ๋ฏ€๋กœ ํฌ์ธํ„ฐ๋ฅผ 22๋กœ ์˜ฎ๊ธด๋‹ค. ๊ฒฐ๊ณผ: {7,.. 2019. 11. 23.
[์•Œ๊ณ ๋ฆฌ์ฆ˜-์ด๋ก ] ์„ ํƒ ์ •๋ ฌ(Selection Sort) ์„ ํƒ ์ •๋ ฌ(Selection Sort) ์ด๋ž€? ์„ ํƒ์ •๋ ฌ์€ ๊ฐ€์žฅ ์›๋ฆฌ๊ฐ€ ๊ฐ„๋‹จํ•˜๋ฉด์„œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ํšจ์œจ๋กœ ๋ดค์„๋•Œ ๊ฒฐ์ฝ” ์ข‹์€ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋กœ ๋ณผ ์ˆ˜ ์—†๋‹ค.(์‹œ๊ฐ„ ๋ณต์žก๋„๋กœ ๋ณธ๋‹ค๋ฉด) ์›๋ฆฌ๋Š” ๋ฐฐ์—ด ์›์†Œ์—๊ฐ€ ๊ฐ€์žฅ ํฐ/์ž‘์€ ์ˆ˜๋ฅผ ๋ฐฐ์—ด์˜ ๋์œผ๋กœ ๋ณด๋‚ด๋Š” ์ž‘์—…์„ ๊ณ„์† ๋ฐ˜๋ณตํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์„ ํƒ์ •๋ ฌ์—๋Š” ํฌ๊ฒŒ 2๊ฐ€์ง€๊ฐ€ ์กด์žฌํ•˜๊ณ  ์ •๋ ฌ ๋ชฉ์ ์— ๋”ฐ๋ผ ๋˜ 2๊ฐ€์ง€๋กœ ๋‚˜๋‰˜๊ฒŒ ๋œ๋‹ค. ์ตœ๋Œ€ ์„ ํƒ ์ •๋ ฌ(์˜ค๋ฆ„์ฐจ์ˆœ) : ํฐ ์ˆ˜๋ฅผ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ์— ์œ„์น˜์‹œํ‚ค๊ณ  ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค๋ฅผ 1์”ฉ ์ค„์ด๋Š” ๋ฐฉ๋ฒ• ์ตœ๋Œ€ ์„ ํƒ ์ •๋ ฌ(๋‚ด๋ฆผ์ฐจ์ˆœ) : ์ž‘์€ ์ˆ˜๋ฅผ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ์— ์œ„์น˜์‹œํ‚ค๊ณ  ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค๋ฅผ 1์”ฉ ์ค„์ด๋Š” ๋ฐฉ๋ฒ• ์ตœ์†Œ ์„ ํƒ ์ •๋ ฌ(์˜ค๋ฆ„์ฐจ์ˆœ) : ์ž‘์€ ์ˆ˜๋ฅผ ๊ฐ€์žฅ ์™ผ์ชฝ์— ์œ„์น˜์‹œํ‚ค๊ณ  ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค๋ฅผ 1์”ฉ ๋Š˜๋ฆฌ๋Š” ๋ฐฉ๋ฒ• ์ตœ์†Œ ์„ ํƒ ์ •๋ ฌ(๋‚ด๋ฆผ์ฐจ์ˆœ) : ํฐ ์ˆ˜๋ฅผ ๊ฐ€์žฅ ์™ผ์ชฝ์— ์œ„์น˜์‹œํ‚ค๊ณ  ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค.. 2019. 11. 23.