그래프를 통과하는 함수가 트리를 통과하는 데 똑같이 잘 작동합니까?그래프 이동 Vs 트리 탐색
답변
글쎄 나무는 방향성이있는 비정상 그래프 라 불리는 특별한 유형의 그래프입니다. 그렇습니다. 넓이 우선과 깊이 첫 번째 탐색은 모두 나무에서 작동합니다.
너비와 깊이의 차이에 대한 자세한 설명을 작성할 수는 있지만 잘못 입력 한 것일 수 있습니다.
너비와 깊이 우선 탐색의 유일한 차이점은 정점을 처리하는 순서입니다. 처음에는 "처리 할"큐에 정점을 추가하는 것으로 생각할 수 있습니다. 우선 깊이는 "처리 될 스택"에 정점을 추가하는 것으로 생각할 수 있습니다. 정점을 처리 할 시간이 왔을 때 (각 데이터 구조에 추가 된 후에) 다음 정점을 처리하기 위해 스택에서 대기열을 제거하거나 팝합니다. 영리한 버전의 깊이 우선 탐색은 스택에 추가하는 대신 정점을 처리하기 위해 재귀를 사용합니다.
나는이 도움이 아닌지 여부 아무 생각 ...이 없다
빠른 구글 검색의 차이점을 설명 꽤 잘 보인다 this을 찾아 (나는 그것이 폭과 깊이를 먼저인지 모른다) BFS 및 DFS. 더 깊이 읽으려면 Steve Skiena의 The Algorithm Design Manual을 추천 할 수도 있습니다.
일반 트리를 탐색 할 수있는 함수는 트리를 탐색 할 때 과도 할 수 있습니다. 순수 트리에서는주기를 확인할 필요가 없기 때문입니다. 그렇게하면 효과가 있지만 더 간단 할 것입니다.
LOL. 다른 방법으로 생각하는 경향이 있습니다. 그래프는 순환을 포함 할 수 있으므로 번거 로움입니다. – dmckee
실제로 사람들이 나무로 시작한 다음 Unix 파일 시스템 에서처럼 심볼릭 링크와 비슷한 것을 소개하기 때문에 두 가지를 밀접하게 연결하는 것이 좋습니다. 갑자기 그래프 대신에 진정한 나무, 당신의 재귀 알고리즘은 날아갑니다. –
- 1. 그래프 탐색 문제
- 2. 이진 탐색 트리 만들기
- 3. 이진 트리 탐색 추상화
- 4. 트리 탐색 폴더 구조를
- 5. 탐색 식 트리
- 6. 안드로이드의 캔버스 이동 그래프
- 7. GWT 트리 이동
- 8. MapView 탐색 이동?
- 9. QT 이동 경로 탐색
- 10. B + 트리 구현, * * vs *
- 11. 그래프/트리 표현 및 재귀
- 12. 그래프 이론 - 스위칭 트리 멤버
- 13. C#을 사용한 그래프 탐색
- 14. Groovy의 동적 객체 그래프 탐색
- 15. Java의 객체 트리 탐색 언어
- 16. 코어 플롯 그래프 이동 방법
- 17. VS Professional에서 VS Team System으로 이동
- 18. VS 2010 Ultimate과 유사한 종속성 그래프?
- 19. 8 퍼즐, 그래프 트리 경로 생성기
- 20. JavaScript 그래프 탐색 알고리즘의 재귀 호출
- 21. primefaces 트리 구성 요소를 탐색 메뉴로 사용합니다.
- 22. C# 테이블 이름을 추출하는 식 트리 탐색
- 23. 스키마의 첫 번째 이진 트리 탐색
- 24. 케이크 PHP 트리 구조와 웹 사이트 탐색
- 25. 정렬되지 않은 목록 탐색 - 이동 된 요소 이동 1px 왼쪽
- 26. JavaScript 또는 플래시를 사용하는 연속 이동 그래프
- 27. magento 탐색 바구니를 장바구니/바구니 위로 이동
- 28. css 탐색 모음에서 기묘한 셀 크기 이동
- 29. Vs 이동 앤트 작업 이름 바꾸기
- 30. 순환 형 그래프를 트리로 축소 (종속성 그래프 -> 트리)
답해 주셔서 감사합니다! 그러나 BF와 DF의 차이점을 보여주기 위해 약간 확장 할 수 있습니까? –
나무가 흐트러지지 않았습니까? –
@DominikAntal 트리가 단독으로 지시됩니다. 노드는 자식 노드에서 부모 노드로가 아니라 자식 노드에 대한 참조 만 가질 수 있습니다. – cbradsh1