์ตœ๋‹จ๊ฑฐ๋ฆฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ โทFloyd-Warshall Algorithm

The Floyd-Warshall Algorithm ๋ชจ๋“  ์ •์  ์Œ์— ๋Œ€ํ•ด ๋‘˜ ์‚ฌ์ด์˜ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ Dijkstra/Bellman-Ford ๋ฅผ ๋ฐ˜๋ณตํ•ด์„œ ๊ตฌํ•  ์ˆ˜๋„ ์žˆ์Œ ๊ฒฝ์œ ์  : ๋‘ ์ •์  u์™€ v๋ฅผ ์ž‡๋Š” ์–ด๋–ค ๊ฒฝ๋กœ๊ฐ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•  ๋•Œ, u์™€ v ์‚ฌ์ด์— ์žˆ๋Š” ๋‹ค๋ฅธ ์ •์  1. ๊ฒฝ์œ ์  k๋ฅผ ์ œ์™ธํ•œ S - {k} ๋…ธ๋“œ ์ค‘ ์„œ๋กœ ๋‹ค๋ฅธ ๋…ธ๋“œ U, V ์„ ํƒ (S = ์ •์  ์ง‘ํ•ฉ์ผ ๋•Œ k, U, V โˆˆ S) 2. U โ†’ k โ†’ V์˜ ๋น„์šฉ ํ™•์ธ ํ›„ ์ตœ๋‹จ๊ฑฐ๋ฆฌ ๊ฐฑ์‹  ์ง์ ‘ ํ•ด๋ณด๊ธฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ทธ๋ž˜ํ”„๊ฐ€ ์ฃผ์–ด์กŒ๋‹ค๊ณ  ํ•ด๋ณด์ž. Floyd-Warshall ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ Dijkstra์™€ ๋‹ค๋ฅด๊ฒŒ ๋ชจ๋“  ๊ทธ๋ž˜ํ”„์˜ ๋ชจ๋“  ์ •์  ์Œ์˜ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๋ฅผ ์ €์žฅํ•ด์•ผํ•˜๋ฏ€๋กœ 2์ฐจ์› ๋ฐฐ์—ด์ด ํ•„์š”ํ•˜๋‹ค ์ดˆ๊ธฐํ™” ํ•  ๋•Œ์—๋Š” if from == to, then ..