์ž๋ฃŒ๊ตฌ์กฐ 2

์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ 2 - ์„ ํƒ ์ •๋ ฌ(selection sort)

์„ ํƒ ์ •๋ ฌ์€ ์ •๋ ฌ๋˜์ง€ ์•Š์€ ์˜์—ญ์—์„œ ์ตœ์†Ÿ๊ฐ’์„ ์„ ํƒํ•œ ๋’ค, ์ •๋ ฌ๋˜์ง€ ์•Š์€ ์˜์—ญ์˜ ์ฒซ๋ฒˆ์งธ ์š”์†Œ์™€ ๋ฐ”๊พธ๊ณ  ๊ณ ์ •์‹œํ‚ค๋Š” ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•˜๋Š” ์ •๋ ฌ ๋ฐฉ์‹์ด๋‹ค. ๋ฌผ๋ก  ์ตœ๋Œ“๊ฐ’์„ ์ด์šฉํ•œ ์ •๋ ฌ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค. ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” ๋ฒ„๋ธ” ์ •๋ ฌ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ O(n**2)์ด๋‹ค. ์•„๋ž˜์˜ ๋ฐฐ์—ด์— ๋Œ€ํ•œ ์˜ค๋ฆ„์ฐจ์ˆœ ์„ ํƒ ์ •๋ ฌ์„ ์‹ค์‹œํ•ด๋ณด์ž. ๋จผ์ €, ์ „์ฒด ๊ตฌ๊ฐ„์—์„œ ๊ฐ€์žฅ ์ž‘์€ ์š”์†Œ๋ฅผ ์„ ํƒํ•œ๋‹ค. 1์ด ์„ ํƒ๋  ๊ฒƒ์ด๋‹ค. ์ด๋ ‡๊ฒŒ ์„ ํƒ๋œ 1์„ ๊ฐ€์žฅ ์™ผ์ชฝ์— ์œ„์น˜ํ•œ 2์™€ ์„œ๋กœ ๋งž๋ฐ”๊พผ ๋’ค, ๊ณ ์ •์‹œํ‚จ๋‹ค. ๋‹ค์‹œ ์ •๋ ฌ๋˜์ง€ ์•Š์€ ์˜์—ญ์—์„œ ๊ฐ€์žฅ ์ž‘์€ ์š”์†Œ๋ฅผ ์„ ํƒํ•œ๋‹ค. 1์€ ์ด๋ฏธ ๊ณ ์ •๋˜์—ˆ์œผ๋ฏ€๋กœ 2๊ฐ€ ์ตœ์†Ÿ๊ฐ’์ด๋‹ค. ์ˆœ์„œ๊ฐ€ ๊ณ ์ • ๋˜์ง€ ์•Š์€ ๋ฐฐ์—ด์˜ ์ œ์ผ ์™ผ์ชฝ์— ์œ„์น˜ํ•œ ์š”์†Œ์™€ ์„œ๋กœ ์ž๋ฆฌ๋ฅผ ๋ฐ”๊พธ์–ด์ค€๋‹ค. 2 ์—ญ์‹œ ์•ž์œผ๋กœ ์œ„์น˜๋ฅผ ๋ฐ”๊พธ์ง€ ์•Š์„ ๊ฒƒ์ด๋‹ค. ์œ„์น˜๊ฐ€ ๊ณ ์ •๋œ ๊ฒƒ์ด๋‹ค. ๊ฐ™์€ ๊ณผ์ •์„ ๊ณ„์† ๋ฐ˜๋ณต..

์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ 1 - ๋ฒ„๋ธ” ์ •๋ ฌ(bubble sort)

๋ฒ„๋ธ” ์ •๋ ฌ์€ ๋ฐฐ์—ด ๋‚ด ์ธ์ ‘ํ•œ ๋‘ ์š”์†Œ๋ฅผ ๋น„๊ตํ•˜๋Š” ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•˜์—ฌ ์ œ์ผ ํฐ ์š”์†Œ๋ฅผ ๋งจ ๋์œผ๋กœ ์ด๋™์‹œํ‚ค๋Š” ์ •๋ ฌ ๋ฐฉ์‹์ด๋‹ค. ์‹œ๊ฐ„๋ณต์žก๋„๋Š” O(N**2)๋กœ ํšจ์œจ์ ์ธ ์ •๋ ฌ ๋ฐฉ์‹์€ ์•„๋‹ˆ๋‹ค. ์•„๋ž˜์˜ ๋ฐฐ์—ด์„ ๋ฒ„๋ธ” ์ •๋ ฌ์„ ์ด์šฉํ•ด ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋‚˜ํƒ€๋‚ด๋ณด์ž. ์ง€๊ธˆ๋ถ€ํ„ฐ ์ธ๋ฑ์Šค๋Š” i๋กœ ํ‘œํ˜„ํ•˜๊ฒ ๋‹ค. ๋จผ์ €, i = 0๊ณผ i = 1์˜ ์š”์†Œ๋ฅผ ๋น„๊ตํ•œ๋‹ค. ๋” ํฐ ์ˆ˜๊ฐ€ ์™ผ์ชฝ์— ์žˆ์œผ๋ฏ€๋กœ ์„œ๋กœ ์œ„์น˜๋ฅผ ๋ฐ”๊ฟ”์ค€๋‹ค. i = 1๊ณผ i = 2๋ฅผ ๋น„๊ตํ•œ๋‹ค. ๋” ํฐ ์ˆ˜๊ฐ€ ์˜ค๋ฅธ์ชฝ์— ์žˆ์œผ๋ฏ€๋กœ ๋‹ค์Œ์œผ๋กœ ๋„˜์–ด๊ฐ„๋‹ค. i = 2์™€ i = 3์„ ๋น„๊ตํ•œ๋‹ค. ๋” ํฐ ์ˆ˜๊ฐ€ ์™ผ์ชฝ์— ์žˆ์œผ๋ฏ€๋กœ ์„œ๋กœ ์œ„์น˜๋ฅผ ๋ฐ”๊ฟ”์ค€๋‹ค. i = 3๊ณผ i = 4๋ฅผ ๋น„๊ตํ•œ๋‹ค. ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋” ํฐ ์ˆ˜๊ฐ€ ์™ผ์ชฝ์— ์žˆ์œผ๋ฏ€๋กœ ์„œ๋กœ ์œ„์น˜๋ฅผ ๋ฐ”๊ฟ”์ค€๋‹ค. (len(array) - 1) ๋ฒˆ์˜ ์‹œํ–‰์„ ํ†ตํ•ด ๊ฐ€์žฅ ํฐ ์š”์†Œ์ธ 5..