首页 文章
  • 4 votes
     answers
     views

    贝尔曼 - 福特:所有最短路径

    我已成功实施Bellman-Ford,以便在边缘具有负重量/距离时找到最短路径的距离 . 我无法让它返回所有最短路径(当有最短路径时) . 我设法用Dijkstra获得所有最短的路径(在给定的节点对之间) . Bellman-Ford有可能吗? (只是想知道我是否在浪费时间去尝试)
  • 0 votes
     answers
     views

    删除边后对最短路径的影响

    已经提供了有向图的输入,并且我已经使用 - 异步和同步Bellman-Ford算法找到了到特定节点'T'的最短路径 . 我试图在删除一些边缘后找出最短路径上的效果 . 在我的方法中,我试图将删除边缘的起始节点处的距离标记为无穷大,并且尝试应用异步Bellman-Ford,但我陷入困境,因为其他节点不会更新它们的值,因为它们已经是最短的路径最小值 . 任何人都可以帮我找到一种方法来找到新的最短路径而...
  • -1 votes
     answers
     views

    哪个python包实现了Bellman-Ford最短路径算法? [关闭]

    哪个python包实现了Bellman-Ford最短路径算法? 给定起始节点i和具有负权重的邻接矩阵G,我想找到从i到另一个节点j的最短路径 . 例如 . 我的图表看起来像: import numpy G = numpy.array([[ 0. , 0.55, 1.22], [-0.54, 0. , 0.63], [-...
  • 2 votes
     answers
     views

    Bellman-Ford算法的正确性,我们还能做得更好吗?

    我了解到Bellman-Ford算法的运行时间为O(| E | * | V |),其中E是边数,V是顶点数 . 假设图表没有任何负加权周期 . 我的第一个问题是,我们如何证明在(| V | -1)迭代内(每次迭代检查E中的每个边),在给定特定的起始节点的情况下,它会更新到每个可能节点的最短路径?我们有可能迭代(| V | -1)次但仍然没有以最短的路径到达每个节点吗? 假设算法的正确性,我们实际上...
  • 3 votes
     answers
     views

    Bellman-Ford算法的变化? [关闭]

    我们有一个有100个顶点的有向图 . v1 - > v2 - > ... v100并且所有边权重等于1.我们希望使用bellman-ford来查找从v1到其他顶点的所有最短路径 . 每个步骤中的该算法以任意顺序检查所有边缘 . 如果在每个步骤中没有改变到所有其他顶点的最短距离v1,则该算法停止 . 步数与检查边的顺序有关 . 此问题的最小步骤和最大步数是多少? 解决方案:2和10...
  • -2 votes
     answers
     views

    关于贝尔曼福特的询问

    我最近一直在研究贝尔曼福特算法 . 我怀疑如果有源图中的负权重周期可以从源顶点到达,那么对于所有节点或某些节点都不存在最短 . 这是我的Bellman ford实现 . //O(VE) #include <bits/stdc++.h> using namespace std; #define ll long long #define sl(n) scanf("%lld&qu...
  • 0 votes
     answers
     views

    Bellman-Ford的结果是“所有对”还是“从一个节点”最短的路径? /是否有全对Bellman-Ford版本?

    我最近正在学习图形算法,在我的大学里我们被教导,Bellman-Ford的结果是从所有节点到所有其他节点(所有对最短路径)的距离表 . 但是我不明白这个算法是如何实现的,并试图通过观看YouTube视频和查找维基百科中的定义等来理解它... 现在问题来了:我找不到描述算法的资源,结果将是所有对最短路径表,但只有"from one node to all other nodes"...
  • 3 votes
     answers
     views

    贝尔曼 - 福特算法部分证明

    我怎样才能在Bellman-Ford算法中证明这一点: 如果没有负权重循环,则从源 s 到接收器 t 的每条最短路径最多具有 n-1 个边,其中 n 是图中顶点的数量 . 有任何想法吗?
  • 0 votes
     answers
     views

    Bellman-Ford的负循环

    在具有V节点和E边的有向图中,Bellman-Ford算法放松每个顶点(或者更确切地说,每个顶点的边缘)(V-1)次 . 这是因为从源到任何其他节点的最短路径最多包含(V-1)个边缘 . 在第V次迭代中,如果边缘可以放松,则表明存在负循环 . 现在,我需要通过这个负循环找到其他节点“毁了” . 也就是说,由于从源到节点的路径上的一个或多个节点位于负循环中,所以不在负循环中的一些节点现在具有与源无穷...
  • 1 votes
     answers
     views

    Bellman Ford算法无法计算有向边加权图的最短路径

    当我在书Algorithms, 4th edition, Robert Sedgewick and Kevin Wayne中遇到下面的问题时,我最近了解了最短路径算法 . 假设我们将EdgeWeightedGraph转换为Directed EdgeWeightedGraph,方法是在EdgeWeightedGraph中为每个Edge创建EdgeWeightedDigraph中的两个Directe...
  • 1 votes
     answers
     views

    O(E)最短路径

    有没有办法在O(E)中找到任意权重的图中从单个源到顶点的最短路径,但如果最短路径有7个或更少的边,则只需要担心它 . Bellman-Ford算法的最佳案例运行时间为O(E),这适用于此吗?
  • 0 votes
     answers
     views

    基于Bellmann ford算法的无向图成本矩阵的距离矢量路由

    我正在尝试使用贝尔曼福特算法为有向图实现距离矢量算法 . 我的输入是初始矩阵,它描述了与其他节点相邻的节点的权重 . 为了计算节点之间的最短路径,我还需要计算矩阵中的变化将发生的迭代 . 如何计算迭代,之后矩阵将为所有节点提供最短路径?样本初始节点矩阵如下,我们将图形视为 R1 -> R2 = 3 R1 -> R3 = 999 R1 -> R4 = 7 R2 -> R3 =...
  • 0 votes
     answers
     views

    Bellman-Ford算法

    我知道Bellman-Ford算法最多需要| V | - 如果图形不包含负权重循环,则1次迭代以找到最短路径 . 有没有办法修改Bellman-Ford算法,以便在1次迭代中找到最短路径?
  • 2 votes
     answers
     views

    在具有两个负边的图中找到从给定节点s到V中的所有节点的最短路径距离

    我对此有一个后续问题:Finding shortest path distances in a graph containing at most two negative edges Ranveer的解决方案看起来很棒,但它不够快,因为我需要O(| E | | V | * log | V |)快速算法 . 我猜Dukeling的解决方案效果很好 . 它有意义,它在Dijkstra算法的相同运行时间...

热门问题