๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ (1)

JUINTINATION

์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ(Minimum Spanning Tree)

์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ(MST)๋ž€? ๊ฐ€์ค‘์น˜ ๊ทธ๋ž˜ํ”„์—์„œ ์‚ฌ์ดํด ์—†์ด ๋ชจ๋“  ์ ๋“ค์„ ์—ฐ๊ฒฐ์‹œํ‚จ ํŠธ๋ฆฌ๋“ค ์ค‘ ์„ ๋ถ„๋“ค์˜ ๊ฐ€์ค‘์น˜ ํ•ฉ์ด ์ตœ์†Œ์ธ ํŠธ๋ฆฌ ์ฆ‰, ์–ด๋–ค ๊ฐ€์ค‘์น˜ ๊ทธ๋ž˜ํ”„์˜ ์‹ ์žฅ ํŠธ๋ฆฌ ์ค‘ ์„ ๋ถ„๋“ค์˜ ๊ฐ€์ค‘์น˜ ํ•ฉ์ด ์ตœ์†Œ์ธ ํŠธ๋ฆฌ ์‹ ์žฅ ํŠธ๋ฆฌ๋Š” ๊ทธ๋ž˜ํ”„์—์„œ ์‚ฌ์ดํด ์—†์ด ๋ชจ๋“  ์ ๋“ค์„ ์—ฐ๊ฒฐ์‹œํ‚จ ํŠธ๋ฆฌ๋กœ ์ฃผ์–ด์ง„ ๊ทธ๋ž˜ํ”„์˜ ์‹ ์žฅ ํŠธ๋ฆฌ๋ฅผ ์ฐพ์œผ๋ ค๋ฉด ์‚ฌ์ดํด์ด ์—†๋„๋ก ๋ชจ๋“  ์ ์„ ์—ฐ๊ฒฐ์‹œํ‚ค๋ฉด ๋œ๋‹ค. ์‹ ์žฅ ํŠธ๋ฆฌ๋Š” ๊ทธ๋ž˜ํ”„์—์„œ ์‚ฌ์ดํด ์—†์ด ๋ชจ๋“  ์ ๋“ค์„ ์—ฐ๊ฒฐ์‹œํ‚จ ํŠธ๋ฆฌ๋กœ ๊ทธ๋ž˜ํ”„์˜ ์ ์ด n๊ฐœ ์žˆ๋‹ค๋ฉด ์‹ ์žฅ ํŠธ๋ฆฌ์—๋Š” n-1๊ฐœ์˜ ์„ ๋ถ„์ด ์žˆ๋‹ค. ๋‹ค์Œ ์˜ˆ์‹œ์—์„œ ์™ผ์ชฝ ๊ทธ๋ฆผ์˜ ๊ทธ๋ž˜ํ”„์˜ ์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ๋Š” ์˜ค๋ฅธ์ชฝ ๊ทธ๋ฆผ์˜ ๊ทธ๋ž˜ํ”„์™€ ๊ฐ™๋‹ค. MST๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ๋ฅผ ์ฐพ๋Š” ๋Œ€ํ‘œ์ ์ธ ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ๋Š” ํฌ๋ฃจ์Šค์นผ ์•Œ๊ณ ๋ฆฌ์ฆ˜(Kruskal's Algorithm)๊ณผ ํ”„๋ฆผ ์•Œ๊ณ ๋ฆฌ..