DFS(Depth-Find-Search)
๊น์ด ์ฐ์ ํ์
์ง๋ ์๊ฐ BFS์ ์ด์ด ์ค๋์ DFS์ ๋ํด ์์๋ณด๋ ค๊ณ ํ๋ค.
DFS๋ Depth-Find-Search๋ก ๊น์ด ์ฐ์ ํ์์ด๋ค. BFS์ ๋ค๋ฅด๊ฒ DFS๋ ๊น์ด๋ฅผ ์ฐ์ ์ ์ผ๋ก ํ์ํ๋ค. ์ฆ ์ต๋ ๊น์ด๊น์ง ์ฌ๊ท์ ์ผ๋ก ์ด๋ํ ํ ์ต๋ ๊น์ด์ ๋๋ฌํ ๊ฒฝ์ฐ ์์ผ๋ก ์ด๋ํ๋ค. ๋ํ BFS์์๋ Queue๋ฅผ ์ฌ์ฉํ๋ค๋ฉด DFS์์๋ Stack์ ์ฌ์ฉํ๋ค. ์ด Stack์ ์ ์ฅ๋ ๊ฐ์ด ์ฐ๋ฆฌ๊ฐ ์ํ๋ DFS์ ํ์ ์์์ด๋ค.
์๊ณ ๋ฆฌ์ฆ ๋์ ๋ฐฉ์ ๋ค์๊ณผ ๊ฐ๋ค.
1. ํน์ ์ ์ ์ด ์์ง ๋ฐฉ๋ฌธํ์ง ์์ ์ ์ ์ธ ๊ฒฝ์ฐ ์ด๋ฅผ ๋ฐฉ๋ฌธ์ฒ๋ฆฌ ํด์ค๋ค.
2. ํด๋น ์ ์ ๊ณผ ์ฐ๊ฒฐ๋ ๋ค๋ฅธ ์ ์ ์ ๋ํด ์ ๊ณผ์ ์ ๋ฐ๋ณตํ๋ค.
๋ค์๊ณผ ๊ฐ์ ๊ทธ๋ํ๊ฐ ์ฃผ์ด์ก์ ๋ DFS๋ฅผ ์ ์ฉํด๋ณด์.
โ ์์ ์ ์ ์ 8์ด๋ผ๊ณ ๊ฐ์ ํ์. ์์ง ๋ฐฉ๋ฌธํ์ง ์์ ์ ์ ์ด๋ฏ๋ก, ์ด๋ฅผ ๋ฐฉ๋ฌธ์ฒ๋ฆฌ ํด์ค๋ค.
Visit | 8 |
โก 8๊ณผ ์ฐ๊ฒฐ๋ 1๊ณผ 2๋ฅผ ๋ฐฉ๋ฌธ ์ฌ๋ถ๋ฅผ ํ์ธํ๊ณ , (์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ๋์ด ์์ผ๋ฏ๋ก 1๋ถํฐ ๋ฐฉ๋ฌธํ๋ค.) ์ด๋ฅผ ๋ฐฉ๋ฌธ์ฒ๋ฆฌ ํด์ค๋ค.
Visit | 8 | 1 |
โข 1๊ณผ ์ฐ๊ฒฐ๋ 3๊ณผ 5์ ๋ฐฉ๋ฌธ ์ฌ๋ถ๋ฅผ ํ์ธํ๊ณ , ์ด๋ฅผ ๋ฐฉ๋ฌธ์ฒ๋ฆฌ ํด์ค๋ค.
3๊ณผ ์ฐ๊ฒฐ๋ ๋ค๋ฅธ ์ ์ ์ด ์์ผ๋ฏ๋ก 5๋ก ๋์ด๊ฐ๊ณ , ์ด๋ฅผ ๋ฐฉ๋ฌธ์ฒ๋ฆฌ ํด์ค๋ค.
Visit | 8 | 1 | 3 | 5 |
โฃ 5์ ์ฐ๊ฒฐ๋ 7๊ณผ 9์ ๋ฐฉ๋ฌธ ์ฌ๋ถ๋ฅผ ํ์ธํ๊ณ , ์ด๋ฅผ ๋ฐฉ๋ฌธ์ฒ๋ฆฌ ํด์ค๋ค.
7๊ณผ ์ฐ๊ฒฐ๋ ๋ค๋ฅธ ์ ์ ์ด ์์ผ๋ฏ๋ก 9๋ก ๋์ด๊ฐ๊ณ , ์ด๋ฅผ ๋ฐฉ๋ฌธ์ฒ๋ฆฌ ํด์ค๋ค.
9์ ์ฐ๊ฒฐ๋ ๋ค๋ฅธ ์ ์ ์ด ์์ผ๋ฏ๋ก 2๋ก ๋์ด๊ฐ๊ณ . ์ด๋ฅผ ๋ฐฉ๋ฌธ์ฒ๋ฆฌ ํด์ค๋ค.
Visit | 8 | 1 | 3 | 5 | 7 | 9 | 2 |
โง ์ ๊ณผ์ ์ด ์ข ๋ฃ๋๋ฉด Visit์ ์ ์ฅ๋ ์ ์ ์ ์์๊ฐ DFS์ด๋ค.
Visit | 8 | 1 | 3 | 5 | 7 | 9 | 2 | 6 | 4 |
DFS ํ์ ์์๋ ์ฌ๋ฌ๊ฐ์ง๊ฐ ๋์ฌ ์ ์๋ค.
ํ์๋ ๊ฐ์ ์ ๋ณด๋ฅผ ์ ์ฅํ ๋ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ ๋ฐฉ์์ ํํ๋ค.
์์ ๊ฐ๋ ์ ํ์ด์ฌ์ผ๋ก ๊ตฌํํด๋ณด์๋ค.
์์์ ์ธ๊ธํ ๊ทธ๋ํ๋ก ์ ๋ ฅ ๊ฐ์ ์ฃผ๋ฉด ์ด๋ก ์์ผ๋ก ๊ตฌํ ๋ต๊ณผ ๋์ผํ ๊ฒ์ ๋ณผ ์ ์๋ค.
[Input]
9 8 8 # ์ ์ ์ ๊ฐ์, ๊ฐ์ ์ ๊ฐ์, ์์ ์ ์
8 1
8 2
1 5
1 3
5 7
5 9
2 6
6 4
[Output]
์ถฉ๋จ๋ํ๊ต ์ปดํจํฐ๊ณตํ๊ณผ ์ด์์ ๊ต์๋์ ์๊ณ ๋ฆฌ์ฆ ์์ ๊ณผ ๋๋น๋์ ์ ํ๋ธ ๊ฐ์ข(youtu.be/l0Rsu7dziws)๋ฅผ ์ฐธ๊ณ ํ์ต๋๋ค.
'โ๏ธ ์๊ณ ๋ฆฌ์ฆ > Graph' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
6. Union Find(ํฉ์งํฉ ์ฐพ๊ธฐ) : MST - 1 (0) | 2021.05.30 |
---|---|
5. Floyd Warshall(ํ๋ฃจ์ด๋ ์์ฌ) : ์ต๋จ ๊ฒฝ๋ก ํ์ - 3 (0) | 2021.03.31 |
4. Bellman-Ford(๋ฒจ๋ง ํฌ๋) : ์ต๋จ ๊ฒฝ๋ก ํ์ - 2 (0) | 2021.03.07 |
3. Dijsktra(๋ค์ต์คํธ๋ผ) : ์ต๋จ ๊ฒฝ๋ก ํ์ - 1 (0) | 2021.03.02 |
1. BFS(Breath-Find-Search) : ๋๋น ์ฐ์ ํ์ (0) | 2021.01.21 |