【发布时间】:2010-11-03 03:59:48
【问题描述】:
请指出正确的方向或告诉我要查找什么来解决此问题:
我有一个包含“节点”对象的“树”对象。 (实际上它被称为有向图)。 每个节点都包含字段字符串“名称”和包含下一个节点的“列表”。
如何创建从头节点到脚节点的所有可能节点名称的列表? 每个列表都包含一条从头到脚的路径。从头到脚的节点数始终相同,即:6。
这就是树的样子:
该图应该给我:
list 1: n1,n2,n4,n5,n7,n9,n13.
lsit 2: n1,n2,n4,n6,n8,n9,n13.
list 3: n1,n2,n4,n10,n11,n12,n13
等等。
可以简单地指出我正确的方向吗?我应该使用什么样的递归算法?我应该使用递归方法还是只使用循环? (我需要在 dikstra 算法的结果上使用它。)
【问题讨论】:
-
那不是真正的树,是吗?
-
假设这是作业,请尝试解决方案,我们会为您提供帮助。
-
理想情况下,您会为此使用递归,但如果您在该图上逐个节点访问,您最终会重复路径并进入无限循环!如果您只想处理一次路径,则必须对节点 ID 进行一些检查并退出该路径的递归!