我的英语不是很好,但我会尽力在这里解释我的问题。我正在开发一个必须在其中创建图形的应用程序。现在我正在使用GraphStream
.
我的图表的要求非常复杂,即:
我有一个名为CDR(Call Data Record)的表,其中有 2 列ANUMBER 和 BNUMBER。表的结构非常清晰,显示了Anumber叫Bnumber,还有一列DATETIME,显示调用的日期和时间。但我这里只需要两列。
假设我们这里有 4 个数字:123, 456 ,789,000,表结构是这样的
Anumber Bnumber
------- -------
123 456
123 789
456 789
789 000
456 000
我的表在这里清楚地显示 123 没有调用 000 但 123 调用了 456 和 789 这两个数字称为 000 所以我必须显示 123 和 000 之间的有向图,它可能显示123->456->000
如下132->789->000
所以问题是我不知道如何在 123 和 000 之间找到这条路径。可能有超过 2 个数字,比如 5 个或 6 个数字,我必须在所有给定的 5 个或 6 个数字之间找到隐藏的数字以上场景456和789是132到000之间的隐藏数字。
还有一件事,我的表包含超过 2000 万行,将来显然行数会随着用户相互调用而增长得非常快。
到目前为止我做了什么:
我在这个问题上做了一些研发,但找不到任何好的库或任何解决方案。到目前为止,我认为Dijkstra's Algorithm
最适合我的场景,因为幸运的是这里GraphStream
提供了这个算法。
我想从你们那里得到什么,给我一个想法,这个算法是否会给我所需的结果,或者我必须找到最适合我的问题的任何其他算法或图形库。我不擅长 ALGO,这就是为什么我在这里寻求任何帮助或指导,如果你们可以给我的话。谢谢