Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 下水道设计的最佳路径_Java_Algorithm - Fatal编程技术网

Java 下水道设计的最佳路径

Java 下水道设计的最佳路径,java,algorithm,Java,Algorithm,在给定的连通、无向、加权图/网络中,是否有任何算法可以找到源和汇之间的所有路径? 网络由多个源节点和一个汇节点组成。路径应该没有循环我将使用A*算法来实现这一点,与基本路径查找有以下区别 从接收器开始,而不是从源开始,因为只有一个接收器 每个节点都是一组位置,而不是单个位置。在每次迭代中,将所有位置的邻居添加到队列中。还要为所有邻居创建分支,以便在下一组中还有一个位置。作为优化,将最大位置数限制为源数 跟踪您在每条路径中到达的源 行驶成本函数应为所有分支路径组合的总行驶距离 估计函数应结合所有

在给定的连通、无向、加权图/网络中,是否有任何算法可以找到源和汇之间的所有路径?
网络由多个源节点和一个汇节点组成。路径应该没有循环

我将使用A*算法来实现这一点,与基本路径查找有以下区别

  • 从接收器开始,而不是从源开始,因为只有一个接收器
  • 每个节点都是一组位置,而不是单个位置。在每次迭代中,将所有位置的邻居添加到队列中。还要为所有邻居创建分支,以便在下一组中还有一个位置。作为优化,将最大位置数限制为源数
  • 跟踪您在每条路径中到达的源
  • 行驶成本函数应为所有分支路径组合的总行驶距离
  • 估计函数应结合所有剩余的源

如果正确使用A*算法,这将给出最佳路径。

如果您查找所有无循环路径,A将完成此工作。在迭代过程中,对于每个当前路径,当它到达路径或接收器上的某个点时,不要继续执行。

它看起来类似于。

hm,所有路径还是最佳路径?如果是最好的,在什么意义上是最好的?如果你寻找所有路径,那么图是否加权有关系吗?这真的是下水道吗?如果是这样的话,图形是有方向的,因为水只从山上流下来。