๊น์ด ์ฐ์ ํ์(DFS)๊ณผ ๋๋น ์ฐ์ ํ์(BFS)
1. ๊น์ด ์ฐ์ ํ์(DFS)
2. ๋๋น ์ฐ์ ํ์(BFS)
3. ์ต์ ๊ฒฝ๋ก์ ์ต๋จ ๊ฒฝ๋ก ์ฐจ์ด
1. ๊น์ด ์ฐ์ ํ์(DFS)
ํ ๋ฐฉํฅ์ผ๋ก ๋๊น์ง ํ์ํ ํ, ๋๋์๊ฐ๋ฉด์ ๋ค๋ฅธ ๊ฒฝ๋ก๋ฅผ ํ์ํ๋ฉฐ ์ต์ ๊ฒฝ๋ก๋ฅผ ์ฐพ๋ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค.
์ต์ ๊ฒฝ๋ก๋ ์ฌ๋ฌ ์กฐ๊ฑด์ ๊ณ ๋ คํ์ฌ ๊ฐ์ฅ ์ ํฉํ ๊ฒฝ๋ก๋ฅผ ์ฐพ๋ ๊ฒ์ ๋๋ค.
์์ธ์์ ๋ถ์ฐ๊น์ง์ ๊ฑฐ๋ฆฌ๋ง ์งง์ ๊ฒ์ด ์๋ ๊ตํต ์ฒด์ฆ, ๊ณ ์๋๋ก ํจ๊ฒ์ดํธ ๋น์ฉ ๋ฑ์ ๊ณ ๋ คํ์ฌ ๊ธธ์ ์ฐพ์ ๋ ์ฌ์ฉ๋ฉ๋๋ค.
๋ค์ต์คํธ๋ผ, ๋ฒจ๋ง-ํฌ๋, ํ๋ก์ด๋-์์ ์๊ณ ๋ฆฌ์ฆ์์ ์ฌ์ฉ๋ฉ๋๋ค.
- ๋์ ๊ณผ์
1. ์์ ๋ ธ๋๋ฅผ ๋ฐฉ๋ฌธํ๊ณ ์คํ์ ๋ฃ์ (๋๋ ์ฌ๊ท ํธ์ถ)
2. ํ์ฌ ๋ ธ๋์์ ๊ฐ ์ ์๋ ๋ ธ๋๋ฅผ ๋ฐฉ๋ฌธ
3. ๋ ์ด์ ๋ฐฉ๋ฌธํ ๋ ธ๋๊ฐ ์์ผ๋ฉด ์ด์ ๋ ธ๋๋ก ๋๋์๊ฐ
4. ๋ชจ๋ ๋ ธ๋๋ฅผ ๋ฐ๋ณตํ ๋๊น์ง ๋ฐ๋ณต
2. ๋๋น ์ฐ์ ํ์(BFS)
์์ ๋ ธ๋์์ ๊ฐ๊น์ด ๋ ธ๋๋ฅผ ๋จผ์ ํ์ํ๋ฉฐ ์ต๋จ ๊ฒฝ๋ก๋ฅผ ์ฐพ๋ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค.
์ต๋จ ๊ฒฝ๋ก๋ ๋จ์ํ ๊ฐ์ฅ ์งง์ ๊ฑฐ๋ฆฌ๋ฅผ ์ฐพ๋ ๊ฒ์ ๋๋ค.
์์ธ์์ ๋ถ์ฐ๊น์ง์ ๊ฐ์ฅ ๋น ๋ฅธ ๊ธธ์ ์ฐพ์ ๋ ์ฌ์ฉ๋ฉ๋๋ค.
๋ค์ต์คํธ๋ผ(์๊ฐ, ๋น์ฉ ๊ฐ์ค์น ๋ฐ์) ์๊ณ ๋ฆฌ์ฆ์์ ์ฌ์ฉ๋ฉ๋๋ค.
- ๋์ ๊ณผ์
1. ์์ ๋ ธ๋๋ฅผ ํ์ ์ถ๊ฐํ๊ณ ๋ฐฉ๋ฌธ ํ์
2. ํ์์ ๋ ธ๋๋ฅผ ๊บผ๋ด ํด๋น ๋ ธ๋์ ์ด์ ๋ ธ๋๋ฅผ ๋ชจ๋ ๋ฐฉ๋ฌธ
3. ๋ฐฉ๋ฌธํ ์ด์ ๋ ธ๋๋ฅผ ๋ค์ ํ์ ์ถ๊ฐ
4. ํ๊ฐ ๋น ๋๊น์ง ๋ฐ๋ณต
3. ์ต์ ๊ฒฝ๋ก์ ์ต๋จ ๊ฒฝ๋ก ์ฐจ์ด
์ต์ ๊ฒฝ๋ก๋ ๋ชจ๋ ์ ์ ์ ์ฐ๊ฒฐํ๋ ์ต์ ์ ์ฅ ํธ๋ฆฌ๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ๊ณ , ์ต๋จ ๊ฒฝ๋ก๋ ๋ ์ ์ ์ ์ด์ด์ฃผ๋ ์ต๋จ ๊ฒฝ๋ก๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์ ๋๋ค.
์์ธ์์ ๋ถ์ฐ๊น์ง ๊ฐ๋ ์ต๋จ ๊ฒฝ๋ก, ์์ธ์์ ๋ถ์ฐ๊น์ง ๊ฐ๋ ๋ฐ์ ๊ฑธ๋ฆฌ๋ ๋น์ฉ์ด ์ต์์ธ ์ต์ ๊ฒฝ๋ก์ ๋๋ค.
ํ๋ถ ๋ ์๊ณ ๋ฆฌ์ฆ์ ๊ณต๋ถํ๋ฉด์ ๊ฐ์ฅ ํท๊ฐ๋ ธ๋ ์ ์ด ์ด ๋ด์ฉ์ด์๋๋ฐ ์์ ๊ฐ์ด ์๊ฐํ๋ฉด ์ดํดํ๋๋ฐ ๋์์ด ๋์ค ๊ฒ๋๋ค.
๋ฌธ์ ๊ฐ ์์ผ๋ฉด ๋๊ธ ๋จ๊ฒจ์ฃผ์ธ์ !
ํผ๋๋ฐฑ์ ์ธ์ ๋ ํ์์ ๋๋ค <3
'๐ก Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Sort] ์ ๋ ฌ (0) | 2025.02.03 |
---|---|
[Subsequence] LIS์ LCS (0) | 2025.02.03 |
[Greedy] Knanspack ์๊ณ ๋ฆฌ์ฆ - C์ธ์ด (0) | 2025.02.03 |
[DP] Knapsack ์๊ณ ๋ฆฌ์ฆ - C์ธ์ด (0) | 2025.01.24 |
[DP] ๋์ ๊ณํ๋ฒ(Dynamic Programming) (0) | 2025.01.24 |