2023/07/31 2

[탐색] 너비 우선 탐색(BFS)

💡 먼저 부족하지만 저의 글을 읽어주셔서 감사드립니다!!! 참고 정도로 해주셨으면 좋겠습니다. 해당 강의는 여기 사이트 입니다. 너비 우선 탐색(Breadth First Search) 시작 노드에서 인접 노드를 모두 방문하고, 방문한 노드에서 인접 노드를 모두 방문하는 것을 반복 그래프 순회 방법 중 하나 간선에 가중치를 줄 수 있다? 👉 큐(Queue) 보통 Queue는 LinkedList 로 만든다. public class App { static final int MAX_N = 10; // 문제에 따라서 최대 노드 개수를 정해줘야 한다. // 어떤 기준으로 정할까? static int vertex, line; static int[][] Graph = new int[MAX_N][MAX_N]; // 인접..

[탐색] 깊이 우선 탐색(DFS)

💡 먼저 부족하지만 저의 글을 읽어주셔서 감사드립니다!!! 참고 정도로 해주셨으면 좋겠습니다. 해당 강의는 여기 사이트 입니다. 깊이 우선 탐색(Depth-First Search) 하나의 노드에서 시작해 마지막 지점까지 계속 그래프를 탐색 미로찾기, 당신을 알 수 있는 친구 찾기 등 내가 강의를 들으면서 생각한 중요한 부분은 노드(node)라고 불리는 각 지점들과 지점들을 연결하는 간선(edge) 이다. 인접행렬의 1과 0 즉, 연결이 되어있으면 1 아니면 0을 이해하면 된다.! 이미지에서와 같이 0부터시작하여 1번 → 3번 → 4번 → 2번 순서대로 간다. 여기서 어떻게 우리는 1번에서 3번 4번으로 갈 수 있을까 생각하는데 코드를 한 번 봤으면 좋겠다. if (!visited[next] && Grap..