ํ๋ก๊ทธ๋๋จธ์ค) ๋จ์ด ๋ณํ github/DFS%2CBFS ์ต๋จ๊ฑฐ๋ฆฌ๊ฐ ํ์ํ๋งํผ DFS๊ฐ ์๋ BFS๋ฅผ ์ด์ฉํ์์. ๊ฐ ๋จ์ด๋ฅผ node๋ก ๋ณด๊ณ , ํ๊ธ์ ์ฐจ์ด๋ก ๋ณํ๊ฐ๋ฅํ๋ฉด ์ธ์ ํ edge๋ก ์ค์ . begin๋ ธ๋ ~ target๋ ธ๋๊น์ง์ ์ต๋จ๊ฑฐ๋ฆฌ ๊ตฌํจ. BFS์ ๊ธฐ๋ณธ๊ตฌ์กฐ๋ ์ผ๋ฐ์ ์ธ ํํ๋ฅผ ๋ฐ๋ฆ (๋ธ๋ก๊ทธ ํฌ์คํ ๊ธฐ๋ณธ์ฝ๋ ์ฐธ๊ณ ) ์ด๋, while๋ฌธ์์ distance ์นด์ดํธ์ depth์ ์๊ด์์ด ๋ ธ๋๋ฅผ ๋ฐฉ๋ฌธํ ๋๋ง๋ค ์นด์ดํ ๋๋ฒ๋ฆฐ๋ค. ๋ฐ๋ผ์ ์๋์ ๊ฐ์ด queue size๋ฅผ ์ด์ฉํ for๋ฌธ ์ถ๊ฐ. ์ฐธ๊ณ ์๋ฃ https://www.acmicpc.net/board/view/12343 ํฐ ์ฐจ์ด๋ ์๋๋ฐ, v2 ์ฝ๋์ ๊ฐ์ด ๋ณ๋์ Nodeํด๋์ค ๊ฐ์ฒด๋ฅผ ์์ฑํ๊ฑฐ๋, node.edge๋ก distance๋ฅผ ์นด์ดํ ํ๊ฑฐ๋, isN..
ํ๋ก๊ทธ๋๋จธ์ค) ํ๊ฒ ๋๋ฒ github/DFS%2CBFS https://lkhlkh23.tistory.com/74 ์ ๋งํฌ๋ฅผ ์ฐธ์กฐํด, ๊ทธ๋ํ๋ฅผ ๋ณด๋ฉด ์ง๊ด์ ์ผ๋ก BFS๋ณด๋จ DFS๋ฅผ ์ฌ์ฉํด์ผํจ์ ๋ ์ฌ๋ฆด์์๋ค. ์ข ๋ฃ์กฐ๊ฑด์ depth limit์ ๋๋ฌํ์๋(๋ฐฐ์ด์ ๋ชจ๋ ์์์ ์ ๊ทผํ์๋)์ด๊ณ , ์ ํ์์ ์ข์ธกleaf๋ +๋ก, ์ฐ์ธกleaf๋ -๋ก ๊ฐ์ ํด ๊ณ์ฐํด๋ธ๋ค. depth limit์์ target๊ฐ๊ณผ์ ๋์กฐ๋ฅผ ํตํด ์นด์ดํ (1)ํ ์ง / ๋ง์ง(0) ๊ฒฐ์ ํ๋ค.
DFS (Depth First Search) (๊น์ด ์ฐ์ ํ์) LIFO(Last-In First-Out), Stack ํ์ฉ PseudoCode recursive non-recursive 1 non-recursive 2 ์์ Input Output ์ฒซ ์ค์ ์ ์ ์ ๊ฐ์ N๊ณผ ๊ฐ์ ์ ๊ฐ์ M์ด ์ฃผ์ด์ง๋๋ค. ๋ค์ M์ค์ ๊ฐ์ ์ ๊ด๊ณ ์์์ ์ u์ ๋์ฐฉ์ ์ v๊ฐ ์ฃผ์ด์ง๋๋ค. ์ ๋ ฅ์ ๋ฐ๋ฅธ ๊น์ด ์ฐ์ ํ์ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํฉ๋๋ค. import java.util.*; public class Test { static boolean edge[][]; static boolean visited[]; static int n; static int m; public static void main(String args[]) { Sca..
- Total
- Today
- Yesterday
- C
- FRAGMENT
- ํด์ธ์ฌํ
- dfs
- ํ๊ณ
- Stack
- reversing
- ์นํดํน
- Java
- mysql
- Android Studio
- webhacking.kr
- ํ๋ก๊ทธ๋๋จธ์ค
- Android
- graph
- ๋ฆฌ๋ฒ์ฑ
- Algorithm
- OneToMany
- git
- queue
- javascript
- ์ฐ์ํ ํ ํฌ์ฝ์ค
- bfs
- Data Structure
- sort
- brute-force
- socket
- Vo
- JPA
- ๊ฐ๋ฐ์
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |