1
1
<!DOCTYPE html>
2
2
< html lang ="ko " xmlns:th ="http://www.thymeleaf.org ">
3
3
< head >
4
- < meta charset ="UTF-8 ">
5
- < title > Doumi</ title >
6
- < link href ="../../static/css/codingtest/timeComplexity.css "
7
- th:href ="@{/css/codingtest/timeComplexity.css} "
8
- rel ="stylesheet " type ="text/css "/>
9
- < link rel ="stylesheet "
10
- href ="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.2.0/styles/default.min.css ">
4
+ < meta charset ="UTF-8 ">
5
+ < title > Doumi</ title >
6
+ < link href ="../../static/css/fragments/footer.css " th:href ="@{/css/fragments/footer.css} "
7
+ rel ="stylesheet "
8
+ type ="text/css "/>
9
+ < link href ="../../static/css/board.css "
10
+ th:href ="@{/css/board.css} "
11
+ rel ="stylesheet " type ="text/css "/>
12
+ < link href ="../../static/css/fragments/header.css " th:href ="@{/css/fragments/header.css} "
13
+ rel ="stylesheet "
14
+ type ="text/css "/>
15
+ < link href ="../../static/css/algorithm/header.css " th:href ="@{/css/algorithm/header.css} "
16
+ rel ="stylesheet " type ="text/css "/>
17
+
18
+
19
+ < link rel ="stylesheet "
20
+ href ="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.2.0/styles/default.min.css ">
11
21
</ head >
22
+ < div th:replace ="~{fragments/header.html::header} "> </ div >
12
23
< body >
13
- < header > </ header >
14
24
< main class ="cont-main ">
15
- < section class ="content-header ">
16
- < button class ="back-button "> < a href ="/doumiAlgorithm "> < 목록으로</ a > </ button >
17
- < h1 class ="title "> DFS와 BFS(DFS & BFS)</ h1 >
18
- < div class ="content-info ">
19
- < a href ="" class ="board-writer-name "> 도우미</ a >
20
- < p class ="content-createdAt "> 24.03.20 21:30 작성</ p >
21
- </ div >
22
- </ section >
23
-
24
- < section class ="content-main ">
25
- < h2 > DFS (Dept-First Search)</ h2 >
26
- < br >
27
- < p > 깊이 우선 탐색이라고 부르며, 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘이다.</ p >
28
- < p > 이것은 스택이나 재귀 호출을 이용하여 구현할 수 있다.</ p >
29
- < p >
30
- < img src ="/images/algorithm/dfs.gif " alt ="dfs.gif "> </ p >
31
- < p > 재귀함수를 사용하여 구현할 때는 종료 조건을 명확히 해줘야 한다. 그렇지 않으면 무한 루프에 빠지게 된다.</ p >
32
- < h3 > 재귀를 활용한 DFS</ h3 >
33
- < pre >
25
+ < section class ="content-header ">
26
+ < button class ="back-button "> < a href ="/doumiAlgorithm "> < 목록으로</ a > </ button >
27
+ < h1 class ="title "> DFS와 BFS(DFS & BFS)</ h1 >
28
+ < div class ="content-info ">
29
+ < a href ="" class ="board-writer-name "> 도우미</ a >
30
+ < p class ="content-createdAt "> 24.03.20 21:30 작성</ p >
31
+ </ div >
32
+ </ section >
33
+
34
+ < section class ="content-main ">
35
+ < h2 > DFS (Dept-First Search)</ h2 >
36
+ < br >
37
+ < p > 깊이 우선 탐색이라고 부르며, 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘이다.</ p >
38
+ < p > 이것은 스택이나 재귀 호출을 이용하여 구현할 수 있다.</ p >
39
+ < p >
40
+ < img src ="/images/algorithm/dfs.gif " alt ="dfs.gif "> </ p >
41
+ < p > 재귀함수를 사용하여 구현할 때는 종료 조건을 명확히 해줘야 한다. 그렇지 않으면 무한 루프에 빠지게 된다.</ p >
42
+ < h3 > 재귀를 활용한 DFS</ h3 >
43
+ < pre >
34
44
< code class ="lang-java ">
35
45
class Solution {
36
46
@@ -54,21 +64,21 @@ <h3>재귀를 활용한 DFS</h3>
54
64
}
55
65
</ code >
56
66
</ pre >
57
- < h3 > DFS를 활용하여 풀 수 있는 문제</ h3 >
58
- < ul >
59
- < li > 모든 경우의 수를 구해야 하는 문제</ li >
60
- < li > 검색 대상의 규모가 큰 문제</ li >
61
- < li > 경로의 특징을 저장해야 하는 문제</ li >
62
- </ ul >
63
- < br > < br >
64
- < h2 > BFS (Breadth-Firsh Search)</ h2 >
65
- < br >
66
- < p > 너비 우선 탐색이라고 부르며, 그래프에서 인접한 노드를 모두 탐색하고 다음 노드를 탐색하는 알고리즘이다. 이것은
67
- 큐와 반복문을 이용하여 구현할 수 있다.</ p >
68
- < p >
69
- < img src ="/images/algorithm/bfs.gif " alt ="bfs.gif "> </ p >
70
- < p > 큐를 활용한 BFS</ p >
71
- < pre >
67
+ < h3 > DFS를 활용하여 풀 수 있는 문제</ h3 >
68
+ < ul >
69
+ < li > 모든 경우의 수를 구해야 하는 문제</ li >
70
+ < li > 검색 대상의 규모가 큰 문제</ li >
71
+ < li > 경로의 특징을 저장해야 하는 문제</ li >
72
+ </ ul >
73
+ < br > < br >
74
+ < h2 > BFS (Breadth-Firsh Search)</ h2 >
75
+ < br >
76
+ < p > 너비 우선 탐색이라고 부르며, 그래프에서 인접한 노드를 모두 탐색하고 다음 노드를 탐색하는 알고리즘이다. 이것은
77
+ 큐와 반복문을 이용하여 구현할 수 있다.</ p >
78
+ < p >
79
+ < img src ="/images/algorithm/bfs.gif " alt ="bfs.gif "> </ p >
80
+ < p > 큐를 활용한 BFS</ p >
81
+ < pre >
72
82
< code class ="lang-java ">
73
83
74
84
public static void bfs(int start) {
@@ -95,21 +105,22 @@ <h2>BFS (Breadth-Firsh Search)</h2>
95
105
</ code >
96
106
</ pre >
97
107
98
- < h3 > 활용하여 풀 수 있는 문제</ h3 >
99
- 최단 경로 찾는 문제
108
+ < h3 > 활용하여 풀 수 있는 문제</ h3 >
109
+ 최단 경로 찾는 문제
100
110
101
- < h3 > 연습 문제</ h3 >
102
- < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/1844# "> 프로그래머스 - 게임 맵 찾기</ a > </ p >
103
- < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/49994# "> 프로그래머스 - 방문 길이</ a > </ p >
104
- < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/84512 "> 프로그래머스 - 모음 사전</ a > </ p >
105
- < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/87946# "> 프로그래머스 - 피로도</ a > </ p >
106
- < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/43165# "> 프로그래머스 - 타겟 넘버</ a > </ p >
107
- < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/72411 "> 프로그래머스 - 메뉴 리뉴얼</ a > </ p >
108
- < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/42839 "> 프로그래머스 - 소수 찾기</ a > </ p >
109
- < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/12977 "> 프로그래머스 - 소수 만들기</ a > </ p >
111
+ < h3 > 연습 문제</ h3 >
112
+ < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/1844# "> 프로그래머스 - 게임 맵 찾기</ a > </ p >
113
+ < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/49994# "> 프로그래머스 - 방문 길이</ a > </ p >
114
+ < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/84512 "> 프로그래머스 - 모음 사전</ a > </ p >
115
+ < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/87946# "> 프로그래머스 - 피로도</ a > </ p >
116
+ < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/43165# "> 프로그래머스 - 타겟 넘버</ a > </ p >
117
+ < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/72411 "> 프로그래머스 - 메뉴 리뉴얼</ a > </ p >
118
+ < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/42839 "> 프로그래머스 - 소수 찾기</ a > </ p >
119
+ < p > < a href ="https://programmers.co.kr/learn/courses/30/lessons/12977 "> 프로그래머스 - 소수 만들기</ a > </ p >
110
120
111
- </ section >
121
+ </ section >
112
122
</ main >
123
+ < div th:replace ="~{fragments/footer.html::footer} "> </ div >
113
124
< script src ="../../static/Js/header.js " th:src ="@{/Js/header.js} "> </ script >
114
125
< script src ="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.2.0/highlight.min.js "> </ script >
115
126
< script > hljs . highlightAll ( ) ; </ script >
0 commit comments