์ฐ๋ฆฌ๋ ์ง๋ ์๊ฐ์ ๊ทธ๋ํ์ ๋ํด์ ํ์ตํ์๋ค.
์ด๋ฒ์๋ ์ด๋ก ์ ์ธ ๊ทธ๋ํ๋ฅผ ์ง์ Java๋ฅผ ์ด์ฉํ์ฌ ์ฝ๋๋ก ์ฎ๊ฒจ ๋ณด๋ ํ์ต์ ํด๋ณผ ์์ ์ด๋ค.
์ด์ ๊ฐ์ ๋ ธ๋๋ฅผ ๊ฐ๊ณ ์๋ ๊ทธ๋ํ๊ฐ ์๋ค๊ณ ์๊ฐํด๋ณด์.
์ง๋ ๋ฒ์๋ ๋ง ํ๋ฏ์ด ๊ทธ๋ํ๋ฅผ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์๋ ๋ ๊ฐ์ง๊ฐ ์๋ค.
- ์ธ์ ํ๋ ฌ
- ์ธ์ ๋ฆฌ์คํธ
์ค๋์ ์ธ์ ํ๋ ฌ๋ก ๊ทธ๋ํ๋ฅผ ๊ตฌํํด๋ณผ ๊ฒ์ด๋ค.
์ธ์ ํ๋ ฌ
์ธ์ ํ๋ ฌ(adjacency matrix)์ด๋ ์ ๊ทธ๋ํ์์ ์ด๋ ๊ผญ์ง์ ๋ค์ด ๋ณ์ผ๋ก ์ฐ๊ฒฐ๋์๋์ง ๋ํ๋ด๋ ์ ์ฌ๊ฐ ํ๋ ฌ์ด๋ค.
์ถ์ฒ : ์ํค ๋ฐฑ๊ณผ
์ํค ๋ฐฑ๊ณผ์์๋ ์ธ์ ํ๋ ฌ์ ๋ํ ์๋ก ๋ค์๊ณผ ๊ฐ์ ๊ทธ๋ฆผ์ ๋ณด์ฌ์ค๋ค.
์ด ๊ทธ๋ฆผ์ ๋ถ์ํด๋ณด์๋ฉด 1๋ฒ ๋ ธ๋๋ถํฐ 6๋ฒ ๋ ธ๋๊น์ง ์ฐ๊ฒฐ๋์ด ์๋ ๋ ธ๋์ 1์ ๋ฃ๋ ๊ฒ์ด๋ค.
๊ทธ๋ผ ์๊น ๊ทธ๋ ธ๋ ๊ทธ๋ํ๋ฅผ ํ ๋ฒ ์ธ์ ํ๋ ฌ๋ก ์ฎ๊ฒจ ๋ณด์.
์์ ๊ฐ์ ์ํ๋ก ๋ ธ๋๊ฐ 6๊ฐ์ด๋ฏ๋ก 6x6 ํ๋ฅผ ์ค๋นํ๋ค.
๊ทธ๋ฆฌ๊ณ ๋ ธ๋์ ๋ ธ๋๊ฐ ์๋ก ์ฐ๊ฒฐ๋์ด ์๋ ์ํ๋ฅผ 1 ์ฐ๊ฒฐ๋์ด ์์ง ์์ ์ํ๋ฅผ 0์ผ๋ก ํ๋ ฌ์ ์ฑ์๋ณด์.
์ด๋ ๊ฒ ํ๋ ฌ์ ์ฑ์ฐ๋ฉด ์ธ์ ํ๋ ฌ์ ๊ทธ๋ฆฌ๋ ๊ฒ์ ๋!
๋ง์ฝ ๊ฐ์ ์ ๊ฐ์ค์น๊ฐ ์๋ค๋ฉด 1์ด ์๋ ๊ฐ์ค์น๋ฅผ ๊ทธ๋ฆฌ๋ฉด ๋๋ ๊ฒ์ด๋ค.
์์ค ์ฝ๋๋ก ์ฎ๊ฒจ๋ณด์.
์ด์ ์์์ ๊ทธ๋ฆฐ ๊ทธ๋ํ๋ฅผ ํ๋ ฌ๋ก ๋ณํ์์ผ์ฃผ๋ ๊ทธ๋ํ๋ฅผ ๊ทธ๋ ค๋ณด์.
ํน์ง
๊ทธ๋ํ๋ฅผ ์ธ์ ํ๋ ฌ๋ก ๊ตฌํํ์ ๋ ์ฅ์ ์ด ์๊ณ , ๋จ์ ์ด ์๋ค. ์ฐ๋ฆฌ๊ฐ v1๊ณผ v2์ ๋ํด์ ๊ฒ์์ ํ ๋๋ ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ก ๊ตฌํํ์ ๋์ ๋ค๋ฅด๊ฒ ํ ๋ฒ์ ์ ๊ทผํ ์ ์๋ค๋ ์ ์ด ์๋ค.
ํน์ง | ๊ณต๊ฐ ๋ณต์ก๋ | |
์ธ์ ํ๋ ฌ | ํน์ ์ ์ ์ ํ ๋ฒ์ ์ ๊ทผํ ์ ์๋ค. | v๋ผ๋ ๊ฐ์ ์ ์๊ฐ ์์ ๋ O(V^2) |
๋๊ธ