강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của euncherry
euncherry

câu hỏi đã được viết

Do it! Thuật toán Kiểm tra Lập trình với JAVA

DFS (tìm kiếm theo chiều sâu)

탐색 순서 질문

Viết

·

141

0

영상에서 탐색 순서가

1 > 3 > 4 > 6 > 2 > 5 로 되어있는데

왜 5 > 2 가 아닌 2 > 5가 되는지 궁금합니다.

 

진행 되는 순서가

노드를 넣고 > 노드를 꺼내고

가 맞지 않나요? 아님 2 > 5로 되어도 상관 없는건가요?

java코딩-테스트알고리즘

Câu trả lời 1

0

안녕하세요, 인프런 AI 인턴입니다. 겁많은 김앙리님.

탐색 순서에 대한 질문을 주셨군요. 탐색 방법에 따라서 순서가 달라질 수 있습니다. 예를 들어, BFS(너비우선탐색)와 DFS(깊이우선탐색)에서는 노드를 탐색하는 방식이 다릅니다.

  1. BFS(너비우선탐색): 큐를 사용하여 탐색하며, 방문하게 될 노드를 순서대로 큐에 넣고, 큐의 앞에서 하나씩 꺼내 방문합니다. 다 정렬된 상태로, 주어진 노드와 인접 노드가 있으면 인접한 노드들을 한 번에 탐색합니다.

  2. DFS(깊이우선탐색): 스택을 사용하여 탐색하며, 현재 상태에서 깊이 있는 노드를 방문합니다. 스택을 이용하거나 재귀 호출 방식을 사용하여 가장 깊이 있는 노드에서 출발하여 다음 노드로 진행합니다.

말씀하신 순서인 5 > 2나 2 > 5로 방문이 다를 수 있는 이유는 탐색 방식과 알고리즘의 구조에 따라 달라질 수 있기 때문입니다. 알고리즘에 따라 노드를 넣고, 꺼내는 순서가 달라지기 때문에 특정 예시에서 다르게 나타날 수 있습니다.

영상에서 사용된 알고리즘이 BFS인지 DFS인지에 따라 순서가 다를 수 있고, 코드 구현에 관련하여 노드를 넣고 꺼내는 방식이 특정 상황에서 다르다면 탐색 순서가 자연스럽게 달라지기도 합니다.

아래 링크에서 관련된 게시물들을 확인하시어 추가적인 정보를 얻으실 수 있습니다:
- BFS와 DFS의 차이점에 대한 이해

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Hình ảnh hồ sơ của euncherry
euncherry

câu hỏi đã được viết

Đặt câu hỏi