- toc {:toc}
ํธ๋ฆฌ์ ๊ธฐ๋ณธ ๊ฐ๋
- ํธ๋ฆฌ : ํ๋ ์ด์์ ๋ ธ๋๋ก ๊ตฌ์ฑ๋ ์ ํ ์งํฉ
- ํธ๋ฆฌ ์์ฉ ๋ถ์ผ
- ์ต์ ํ ๋ฌธ์ ํด๊ฒฐ
- ์๊ณ ๋ฆฌ์ฆ
- ๋ถ์๊ตฌ์กฐ์ ์ค๊ณ, ํํ๊ฒฐํฉ ํ์
- ๋ฃจํธ : ๊ทธ๋ํ์ ์์ ๋ ธ๋. ๊ฐ์ฅ ๋์ ๊ณณ์ ์์นํ๋ค.
- ์ฐจ์ : ํด๋น ๋ ธ๋์ ์์ ์์ ์๋ธ ํธ๋ฆฌ์ ๊ฐ์
- ์ ๋ ธ๋ : ์ฐจ์๊ฐ 0 ์ธ ๋ ธ๋, ๋งจ ์๋์ ์์น
- ์์ ๋ ธ๋ : ์ด๋ค ๋ ธ๋์ ์๋ธ ํธ๋ฆฌ์ ๋ฃจํธ ๋ ธ๋
- ๋ถ๋ชจ ๋ ธ๋
- ํ์ ๋ ธ๋ : ๋์ผํ ๋ถ๋ชจ๋ฅผ ๊ฐ๋ ๋ ธ๋
- ์ค๊ฐ ๋ ธ๋ : ๋ฃจํธ๋ ์๋๊ณ ์ ๋ ธ๋๋ ์๋ ๋ ธ๋
- ์กฐ์ : ํด๋น ๋ ธํธ๋ถํฐ ๋ฃจํธ๊น์ง์ ๊ฒฝ๋ก์ ์๋ ๋ชจ๋ ๋ ธ๋
- ์์ : ํด๋น ๋ ธ๋๋ถํฐ ์ ๋ ธ๋์ ์ด๋ฅด๋ ๋ชจ๋ ๋ ธ๋
- ๋ ๋ฒจ
- ํธ๋ฆฌ์ ๋์ด : ํธ๋ฆฌ์์ ๋ ธ๋๊ฐ ๊ฐ์ง ์ ์๋ ์ต๋ ๋ ๋ฒจ (ํธ๋ฆฌ์ ๊น์ด)
- ์ฒ : ์๋ก ์ฐ๊ฒฐ๋์ง ์๋ ํธ๋ฆฌ๋ค์ ์งํฉ : ๋ฃจํธ๋ฅผ ์ ๊ฑฐํ๋ฉด ์ฒ์ ์ป์ ์ ์๋ค.
- ๊ทธ๋ํ G = (V, E) ์์ V ์ ์์์ ๊ฐ์ = n, E ์ ์์์ ๊ฐ์ = m ์ผ ๋ ๋ค์์ ๋์น์ด๋ค.
- G ๋ ํธ๋ฆฌ์ด๋ค.
- G ๋ ์ฐ๊ฒฐ๋์ด ์๊ณ m = n-1 ์ด๋ค. ์ฐ๊ฒฐ์ = ๋ ธ๋ - 1
- G ๋ ์ฐ๊ฒฐ๋์ด ์๊ณ ์ด๋ ํ ์ฐ๊ฒฐ์ ๋ง์ ์ ๊ฑฐํ๋ฉด G ๋ ์ฐ๊ฒฐ๋์ง ์๋๋ค.
- G ๋ ์ฌ์ดํด์ ๊ฐ์ง์ง ์๋๋ค.
- G ๋ ์ด๋ ํ ์ฐ๊ฒฐ์ ๋ง ์ฒจ๊ฐํด๋ ์ฌ์ดํด์ ํ์ฑํ๋ค.
- n- ํธ๋ฆฌ : ๋ชจ๋ ์ค๊ฐ ๋
ธ๋๋ค์ด ์ต๋ n ๊ฐ์ ์์ ๋
ธ๋๋ฅผ ๊ฐ์ง ๋
- ์ด์ง ํธ๋ฆฌ : n ์ด 2 ์ธ ๊ฒฝ์ฐ
๋ฐฉํฅ ํธ๋ฆฌ
- ๋ฐฉํฅ์ด ์๊ณ ์์ํ๋ ํธ๋ฆฌ
- ๋ฃจํธ ๋ ธ๋๊ฐ ํ๋๊ฐ ์๋ค. ๋ฃจํธ์์๋ ๋ชจ๋ ๋ ธ๋๋ก ๊ฐ ์ ์๋ ๊ฒฝ๋ก๊ฐ ์๋ค.
- ๋ฃจํธ๋ฅผ ์ ์ธํ ๋ชจ๋ ๋ ธ๋๋ค์ ์ค์ง ํ๋์ฉ๋ง์ ์ ํ์๋ฅผ ๊ฐ์ง๋ค.
- ๊ฐ ๋ ธ๋์ ํ์์๋ค์ ์ผ์ชฝ์ผ๋ก๋ถํฐ ์์ํ๋์ด ์๋ค.
์ด์ง ํธ๋ฆฌ
- ์ฌํฅ ์ด์ง ํธ๋ฆฌ : ์ผ์ชฝ, ์ค๋ฅธ์ชฝ์ผ๋ก ํธํฅ๋ ํธ๋ฆฌ์ ๊ตฌ์กฐ
- ์์ ์ด์ง ํธ๋ฆฌ : ๋์ด๊ฐ k ์ผ ๋ ๋ ๋ฒจ 1 ๋ถํฐ k-1 ๊น์ง๋ ๋ชจ๋ ์ฐจ์๊ณ k ์์๋ ์ผ์ชฝ ๋ ธ๋๋ถํฐ ์ฐจ ์๋ ์ด์ง ํธ๋ฆฌ
- ํฌํ ์ด์ง ํธ๋ฆฌ : ์ ๋ ธ๋๊ฐ ์๋ ๊ฒ๋ค์ ๋ชจ๋ 2 ๊ฐ์ฉ์ ์์ ๋ ธ๋๋ฅผ ๊ฐ์ง๊ณ ํธ๋ฆฌ์ ๋์ด๊ฐ ์ผ์ ํ ๊ฒฝ์ฐ
- ์ด์ง ํธ๋ฆฌ๊ฐ ๋ ๋ฒจ i ์์ ๊ฐ์ง ์ ์๋ ์ต๋ํ์ ๋
ธ๋ ์ =
๊ฐ - ๋์ด๊ฐ k ์ธ ์ด์ง ํธ๋ฆฌ๊ฐ ๊ฐ์ง ์ ์๋ ์ต๋ํ์ ๋
ธ๋ ์ =
- ์ด์ง ํธ๋ฆฌ์์ ์ ๋ ธ๋์ ๊ฐ์ = n, ์ฐจ์๊ฐ 2 ์ธ ๋ ธ๋์ ๊ฐ์๋ฅผ m ์ด๋ผ ํ ๋ n=m+1 ์ด ํญ์ ์ฑ๋ฆฝํ๋ค.
์ด์ง ํธ๋ฆฌ์ ํ๋ฐฉ
-
์ค์์ ํ๋ฐฉ (inorder, LDR)
- ํธ๋ฆฌ์ ์ผ์ชฝ ์๋ธ ํธ๋ฆฌ๋ฅผ ํ๋ฐฉํ๋ค.
- ๋ ธ๋๋ฅผ ๋ฐฉ๋ฌธํ๊ณ ๋ฐ์ดํฐ๋ฅผ ์ถ๋ ฅํ๋ค.
- ํธ๋ฆฌ์ ์ค๋ฅธ์ชฝ ์๋ธ ํธ๋ฆฌ๋ฅผ ํ๋ฐฉํ๋ค.
-
์ ์์ ํ๋ฐฉ (preorder, DLR)
- ๋ ธ๋๋ฅผ ํ๋ฐฉํ๊ณ ๋ฐ์ดํฐ๋ฅผ ์ถ๋ ฅํ๋ค.
- ํธ๋ฆฌ์ ์ผ์ชฝ ์๋ธ ํธ๋ฆฌ๋ฅผ ํ๋ฐฉํ๋ค.
- ํธ๋ฆฌ์ ์ค๋ฅธ์ชฝ ์๋ธ ํธ๋ฆฌ๋ฅผ ํ๋ฐฉํ๋ค.
-
ํ์์ ํ๋ฐฉ (postorder, LRD)
- ํธ๋ฆฌ์ ์ผ์ชฝ ์๋ธ ํธ๋ฆฌ๋ฅผ ํ๋ฐฉํ๋ค.
- ํธ๋ฆฌ์ ์ค๋ฅธ์ชฝ ์๋ธ ํธ๋ฆฌ๋ฅผ ํ๋ฐฉํ๋ค.
- ๋ ธ๋๋ฅผ ํ๋ฐฉํ๊ณ ๋ฐ์ดํฐ๋ฅผ ์ถ๋ ฅํ๋ค.
์์ฑ ํธ๋ฆฌ์ ์ต์ ๋น์ฉ ์์ฑ ํธ๋ฆฌ
-
์์ฑ ํธ๋ฆฌ : ๊ทธ๋ํ G ์์ ๋ชจ๋ ๋ ธ๋๋ฅผ ํฌํจํ๋ ํธ๋ฆฌ
-
์์ฑ ํธ๋ฆฌ์ ๋น์ฉ : ํธ๋ฆฌ ์ฐ๊ฒฐ์ ์ ๊ฐ์ ๋ชจ๋ ํฉํ ๊ฐ
-
์ต์ ๋น์ฉ ์์ฑ ํธ๋ฆฌ (Minimum Spanning Tree : MST) : ์ต์ ๋น์ฉ์ ๊ฐ๋ ์์ฑ ํธ๋ฆฌ
-
ํ๋ฆผ์ ์๊ณ ๋ฆฌ์ฆ
- ์ฃผ์ด์ง ๊ฐ์ค ๊ทธ๋ํ G = (V, E) ์์ V = {1, 2, โฆ, n} ์ด๋ผ๊ณ ํ์.
- ๋ ธ๋์ ์งํฉ U ๋ฅผ 1 ๋ก ์์ํ๋ค.
, ์ผ ๋ U, V-U ๋ฅผ ์ฐ๊ฒฐํ๋ ๊ฐ์ฅ ์งง์ ์ฐ๊ฒฐ์ ์ ์ฐพ์ v ๋ฅผ U ์ ํฌํจ์ํจ๋ค. ์ด๋, ์ฌ์ดํด์ ํ์ฑํ์ง ์๋ ์ฐ๊ฒฐ์ ์ ์ฐพ๋๋ค. - 2 ๋ฒ์ ๊ณผ์ ์ U=V ๋๊น์ง ๋ฐ๋ณตํ๋ค.
-
ํฌ๋ฃจ์ค์นผ ์๊ณ ๋ฆฌ์ฆ
- ์ฃผ์ด์ง ๊ฐ์ค ๊ทธ๋ํ G = (V, E) ์์ V = {1, 2, โฆ, n} ์ด๋ผ๊ณ ํ๊ณ T ๋ฅผ ์ฐ๊ฒฐ์ ์ ์งํฉ์ด๋ผ ํ์.
- T ๋ฅผ ๊ณต์งํฉ์ผ๋ก ๋๋๋ค.
- ์ฐ๊ฒฐ์ ์ ์งํฉ E ๋ฅผ ๋น์ฉ์ด ์ ์ ์์๋ก ์ ๋ ฌํ๋ค.
- ๊ฐ์ฅ ์ต์๊ฐ์ ๊ฐ์ง ์ฐ๊ฒฐ์ ์ ์ฐจ๋ก๋ก ์ฐพ์๊ฐ ์ฌ์ดํด์ ์ด๋ฃจ์ง ์์ผ๋ฉด ์ฐ๊ฒฐ์ ์ T ์ ํฌํจ์ํจ๋ค.
- 3 ๋ฒ์ ๊ณผ์ ์ T ์ ์์์ ๊ฐ์ = V ์ ์์์ ๊ฐ์ - 1