我有一个巨大的节点有向图(100M+ 个节点),节点集之间有多个路径实例记录。任何两个节点之间的路径可能会有所不同,但我想找到的是共享多个中间节点的路径,除了主要偏差。
例如,我在节点 A 和节点 H 之间有 10 个路径实例。这 10 个路径实例中有 9 个经过节点 c、d、e、f - 但其中一个实例经过 c、d、z、e、f - 我想找到那个“奇怪”的实例。
有什么想法我什至会开始解决这样的问题吗?可能适合该任务的现有分析框架?
基于评论的详细信息:
- PIR(路径实例记录)是经过的节点列表,每个边具有相关的边遍历时间。
- 目前,原始 PIR 记录采用纯字符串格式 - 显然,我希望根据我最终选择分析它的方式以不同方式存储它。
- 这不是一个解决路径的问题——我永远不需要找到所有可能的路径;我只需要分析采用的路径(每个路径都是 PIR)。
- 需要从 PIR 生成子路径列表。
PIR 的示例类似于:nodeA;300;nodeB;600;nodeC;100;nodeD;100;nodeF
这转化为 A->BC->D->F 的路径;每个顶点的成本/时间是一个数字——例如,从 A->B 出发花费 300,从 B->C 出发花费 600,从 D->F 出发花费 100。每次进行遍历时,每次遍历的成本/时间都会有所不同。因此,例如,在一个 PIR 中,从 A->B 出发可能花费 100,但在下一个 PIR 中,从 A->B 出发可能花费 150。