๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์•Œ๊ณ ๋ฆฌ์ฆ˜ [Algorithm] - ๊ณ„์ˆ˜ ์ •๋ ฌ Counting Sort (7) (C, Python) ๊ณ„์ˆ˜ ์ •๋ ฌ ์ด๋ฒˆ์—๋Š” ๊ณ„์ˆ˜ ์ •๋ ฌ์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž. ๊ณ„์ˆ˜ ์ •๋ ฌ์ด๋ž€ ๋‹จ์ˆœํ•˜๊ฒŒ 'ํฌ๊ธฐ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์„ธ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜'์ด๋‹ค. ํ•˜์ง€๋งŒ ๊ณ„์ˆ˜ ์ •๋ ฌ์€ '๋ฒ”์œ„์กฐ๊ฑด'์ด ์žˆ๋Š” ๊ฒฝ์šฐ์— ํ•œํ•ด์„œ ๊ต‰์žฅํžˆ ๋น ๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค. ์ง€๊ธˆ๊นŒ์ง€ ์„ ํƒ ์ •๋ ฌ, ๋ฒ„๋ธ” ์ •๋ ฌ, ์‚ฝ์ž… ์ •๋ ฌ, ํ€ต ์ •๋ ฌ, ๋ณ‘ํ•ฉ ์ •๋ ฌ, ํž™ ์ •๋ ฌ์„ ๋ฐฐ์› ๋Š”๋ฐ ์ง€๊ธˆ ๊นŒ์ง€ ๋ฐฐ์šด ์ •๋ ฌ ์ค‘ ๊ฐ€์žฅ ๋น ๋ฅธ ์ •๋ ฌ๋ฐฉ๋ฒ•์„ ๊ณ ๋ฅด๋ผ๋ฉด ์‹œ๊ฐ„ ๋ณต์žก๋„ O(N*log N)์„ ๊ฐ€์ง€๋Š” ํ€ต ์ •๋ ฌ, ๋ณ‘ํ•ฉ ์ •๋ ฌ, ํž™ ์ •๋ ฌ ์ค‘ ํ•˜๋‚˜๋ฅผ ๊ณ ๋ฅผ ๊ฒƒ์ด๋‹ค. ํ•˜์ง€๋งŒ ์ด๋ณด๋‹ค ๋” ๋น ๋ฅด๊ฒŒ ์ •๋ ฌํ•ด์•ผ ํ•œ๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ๋ ๊นŒ? ๊ณ„์ˆ˜ ์ •๋ ฌ์€ ๋ฒ”์œ„๊ฐ€ ์ฃผ์–ด์ ธ์žˆ๋‹ค๋ฉด ์‹œ๊ฐ„๋ณต์žก๋„ O(N)์˜ ์†๋„๋กœ ์ •๋ ฌ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค. ํฌ๊ธฐ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๊ฐฏ์ˆ˜๋ฅผ ์„ธ๊ณ , ๊ฐฏ์ˆ˜๋งŒํผ ์ถœ๋ ฅํ•ด์ฃผ๋ฉด ์ •๋ ฌ์ด ์ด๋ฃจ์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์— ๊ต‰์žฅํžˆ ๋น ๋ฅด๋‹ค. ๋‹ค์Œ์˜ 5 ์ดํ•˜ ์ž์—ฐ์ˆ˜ ๋ฐ์ดํ„ฐ๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•˜์„ธ..