Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 동적계획법
- 바인딩
- 프로그래머스
- Java
- JAVA_HOME
- 전공자따라잡기
- 백준
- 도커
- 이진트리
- 9093
- n진법게임
- 포화이진트리
- 1707
- 알고리즘
- 이분그래프
- BFS
- 연결요소
- 인오더
- dfs
- 피보나치
- 순회
- 그래프
- 완전이진트리
- Bottom Up
- 11724
- DynamicProgramming
- 웹개발
- 포스트오더
- 자바
- 링킹
Archives
- Today
- Total
목록탐색 (1)
물음표 살인마
[백준1260] DFS와 BFS 문제를 통해 그래프 탐색 이해하기
그래프 탐색의 목적: 임의의 정점에서 시작하여 연결되어 있는 모든 정점을 한 번씩 방문하는 것. 탐색 방법은 크게 2가지, DFS(깊이 우선 탐색)과 BFS(너비 우선 탐색)으로 나뉜다. 1. 깊이 우선 탐색(Depth First Search) 스택을 이용해 갈 수 있는 만큼 최대한 많이 간다. 더이상 갈 수 없으면 이전 정점으로 돌아간다. 재귀 호출을 이용해 구현 가능 void dfs(int x){ check[x] = true; for(int i = 0; i < a[x].size(); i++){ if(!checked[y]){ dfs(y); } } } 2. 너비 우선 탐색(Breadth First Search) 큐를 이용해 지금 위치에 갈 수 있는 것을 모두 큐에 넣는 방식 큐에 넣을 때 방문했다고 체크..
개발지식/Algorithm
2023. 1. 10. 21:31