【发布时间】:2009-06-02 06:18:06
【问题描述】:
我想在给定的 Java 代码中获得最长的路径。此代码可能以图表的形式出现。是否有任何开源工具/API 可以获取此信息?
【问题讨论】:
-
在应用程序的上下文中定义最长路径。地图上两点之间的最长路径?最长的类路径?使用的文件的最长路径?....
我想在给定的 Java 代码中获得最长的路径。此代码可能以图表的形式出现。是否有任何开源工具/API 可以获取此信息?
【问题讨论】:
http://en.wikipedia.org/wiki/Bellman-Ford_algorithm
只需将权重设为负数;并且不允许任何循环中所有顶点之和为负的循环(这表示不定式循环)
【讨论】:
如,最长的执行路径?
这似乎并不容易实现。 您当然可以将 Java 字节码“解码”为“Java 程序集”(正确的名称是什么?),并根据代码中的分支创建一个图表。
问题是您的图表几乎肯定会有循环,并且您的最长路径将是无限的,除非您开始模拟执行。
【讨论】:
要找到最长的路径,您可以考虑所有可能的路径并选择最长的路径。注意:如果你有一个循环,这将是无限的。
顺便说一句:通常人们会尝试找到最短路径。
【讨论】: