깊이우선탐색 2

[그래프 탐색] DFS (Depth First Search, 깊이 우선 탐색)

개념정의하나의 정점에서 시작해 모든 정점들을 한 번씩 방문하는 작업종류DFS (Depth First Search, 깊이 우선 탐색)루트 노드에서 시작해서 가장 깊은 곳까지 탐색한 후, 다음 분기로 넘어간다.재귀함수 또는 Stack으로 구현 가능하다.BFS (Breadth First Search, 너비 우선 탐색)루트 노드에서 가장 가까운 정점들을 차례로 방문한 뒤,방문했던 정점들과 가장 가까운 정점들을 또 다시 탐색하는 방식.  DFS (Depth First Search, 깊이 우선 탐색) >시간 복잡도노드의 개수를 V, 간선의 개수를 E라고 할 때, 인접 행렬에서의 시간 복잡도 : O(V²)인접 리스트에서의 시간 복잡도 : O(V+E)장점현재 경로 상의 노드들만 기억하면 되므로 저장공간이 비교적 적게 ..

[프로그래머스 / 완전탐색 / 자바(JAVA)] 피로도

문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/87946[ 요약 ]더보기시작 시간 : .종료 시간 : .소요 시간(분) : . 도전 횟수 (제출 횟수) : .로직 및 풀이 참고 여부 : O [ 풀어보기 ] 풀이📌 로직여러가지를 고려해보았으나 다 실패했다.최소 필요 피로도가 높은 것부터 통과하기소모 피로도가 낮은 것 부터 통과하기최소 필요 피로도 - 소모 피로도의 값을 구한 후, 값이 큰 것부터 통과하기그러니.. 완전 탐색을 활용하는 수 밖에 없다. (문제 분류가 완전탐색인 이유가 있었다...)방문 여부를 체크하는 boolean 배열변수 visited를 전역변수로 선언방문할 수 있는 던전의 최대 개수를 담을 변수 int max를 전역..