Algorithm/์๊ณ ๋ฆฌ์ฆ
[Algorithm] DFS & BFS
DFS( Depth-First Search) ๊น์ด์ฐ์ ํ์(DFS) : ์คํ ์๋ฃ๊ตฌ์กฐ(ํน์ ์ฌ๊ทํจ์)๋ฅผ ์ด์ฉ, ๊น์ ๋ถ๋ถ์ ์ฐ์ ์ ์ผ๋ก ํ์ํ๋ ์๊ณ ๋ฆฌ์ฆ ํ์ ์์ ๋
ธ๋๋ฅผ ์คํ์ ๊ฐ์
ํ๊ณ ๋ฐฉ๋ฌธ ์ฒ๋ฆฌ๋ฅผ ํฉ๋๋ค. ์คํ์ ์ต์๋จ ๋
ธ๋์ ๋ฐฉ๋ฌธํ์ง ์๋ ์
์ ํ ๋
ธ๋๊ฐ ํ๋๋ผ๋ ์์ผ๋ฉด ๊ทธ ๋
ธ๋๋ฅผ ์คํ์ ๋ฃ๊ณ ๋ฐฉ๋ฌธ ์ฒ๋ฆฌ๋ฅผ ํฉ๋๋ค. ๋ฐฉ๋ฌธํ์ง ์์ ์ธ์ ๋
ธ๋๊ฐ ์์ผ๋ฉด ์คํ์์ ์ต์๋จ ๋
ธ๋๋ฅผ ๊บผ๋
๋๋ค. ๋์ด์ 2๋ฒ์ ๊ณผ์ ์ ์ํํ ์ ์์ ๋๊น์ง ๋ฐ๋ณตํฉ๋๋ค. DFS, BFS ๋ ๋ค ์๊ฐ ๋ณต์ก๋๋ ๊ฐ๋ค ์ค์ ๋ก๋ ์คํ์์ญ(ํน์ ์ฌ๊ทํจ์)๋ฅผ ์ฌ์ฉํ์ง ์๋ BFS(๋ฐ๋ณต๋ฌธ)๋ก ํธ๋ ๊ฒ์ด ๋ ๋น ๋ฅผ ์ ์๋ค graph = [ [], [2,3,8], [1,7], [1,4,5], [3,5], [3,4], [7], [2,6,8], [1,7] ..