遍历网络搜索,当搜索路径上的节点值满足目标时停止
Search through the network and stop when the value of the node along the search path meet the target
graph
我有一个有向网络图,需要找到从节点“a”开始的所有可能路径,并比较沿每条可能路径的每个节点的值。如果它到达一个值小于 a 值的节点,那么它将停止搜索该特定路径的其余部分。
比如在这个网络中,我们可以得到四种可能的路径:
a,b,e,m
a,c,f,k
a,c,g,h
a,c,g,I
具体代码将取决于您使用什么图形框架(如果有)来表示图形。一般来说,a depth-first search 是递归算法;所以如果你有每个节点的子节点列表(假设你的结构是一棵树,就像图像中的那样),你可以遍历每个节点的子节点,然后为每个:
- 如果值大于等于
a
,递归检查子节点
- 否则,停止递归调用(即向根节点回溯分支)
这只是一般指导;如果您可以提供当前代码的示例,我们可以给出更具体的指导。
graph
我有一个有向网络图,需要找到从节点“a”开始的所有可能路径,并比较沿每条可能路径的每个节点的值。如果它到达一个值小于 a 值的节点,那么它将停止搜索该特定路径的其余部分。 比如在这个网络中,我们可以得到四种可能的路径:
a,b,e,m
a,c,f,k
a,c,g,h
a,c,g,I
具体代码将取决于您使用什么图形框架(如果有)来表示图形。一般来说,a depth-first search 是递归算法;所以如果你有每个节点的子节点列表(假设你的结构是一棵树,就像图像中的那样),你可以遍历每个节点的子节点,然后为每个:
- 如果值大于等于
a
,递归检查子节点 - 否则,停止递归调用(即向根节点回溯分支)
这只是一般指导;如果您可以提供当前代码的示例,我们可以给出更具体的指导。