0
A
回答
2
是的,您可以使用深度优先搜索(DFS)或广度优先搜索(BFS),检查任何优秀的texbook,例如Thomas H. Cormen的“Introduction to Algorithms”。
您不需要使用边来“追溯自己”,使用堆栈(或递归)或队列。
1
void dfs(node V) {
mark V as visited;
for each edge E, so that E.source = V, do {
if(E.destination is not marked as visited) {
dfs(E.destination);
}
}
}
就是这样。 DFS(递归)的作用是在当前实例完成时返回到其调用者实例。由于它使用堆栈来保存所有活动实例,因此不必自行返回,当当前节点上的函数完成执行后,它会自动回滚到前一个节点。
相关问题
- 1. 贪婪算法
- 2. 贪婪算法的使用例子?
- 3. 我的贪婪算法有缺陷吗?
- 4. 贪婪算法的一般算法
- 5. 击败贪婪算法
- 6. 贪婪算法,调度
- 7. 找到与贪婪算法
- 8. 贪婪算法:机器人
- 9. 使用正则表达式查找所有匹配 - 贪婪和非贪婪!
- 10. 贪婪的算法实现,Haskell
- 11. 双方匹配的贪婪算法
- 12. 贪婪算法,numpy的,矩阵,移出
- 13. 局部算法和贪婪算法有什么区别?
- 14. 贪婪算法:成本最小化
- 15. 硬币更改贪婪算法
- 16. Dijkstra算法中的未访问节点?
- 17. 有什么想法来优化贪婪算法吗?
- 18. perl非贪婪问题
- 19. 使用贪婪算法寻找最小独立支配集
- 20. 贪婪行为
- 21. 在Textpad中使用POSIX非贪婪RegEx
- 22. 用贪婪的量词
- 23. 在javascript中贪婪与尾随贪婪正则表达式
- 24. Perl的贪婪正则表达式不是演戏贪婪
- 25. 一个部分贪婪的正则表达式,其他贪婪
- 26. 贪婪和非贪婪的正则表达式
- 27. 正则表达式的帮助,贪婪与非贪婪
- 28. 用交换参数证明贪婪算法
- 29. DFS贪婪色数
- 30. Javafx贪婪绑定
如果你只想访问所有的节点,你为什么需要“追溯自己”? – Raufio 2013-03-06 07:36:24
因为如果我没有回溯下图,这并不一定意味着我会访问每个节点。 – 2013-03-06 07:37:22
如果它是非循环的并且是直接的,当你用完检查的节点时,即你到达所有路径的末端,节点在哪里存在而不被访问? – Raufio 2013-03-06 07:41:40