小编Chr*_*nce的帖子

使用时空权衡的最短路径算法?

问题:在未加权的无向图中找到最短路径。

广度优先搜索可以找到两个节点之间的最短路径,但这可能需要 O(|V| + |E|) 时间。预先计算的查找表将允许在 O(1) 时间内回答请求,但以 O(|V|^2) 空间为代价。

我想知道的是否有一种算法可以提供更细粒度的时空权衡?换句话说,是否有一种算法:

  1. 在比 O(1) 更多的时间内找到最短路径,但比双向广度优先搜索快
  2. 使用比 O(|V|^2) 占用更少空间的预计算数据?

在实际方面:该图有 800,000 个节点,被认为是一个小世界网络。全对最短路径表的数量级为千兆字节——这在当今并不令人发指,但它不符合我们的要求。

但是,我是出于好奇而问我的问题。让我夜不能寐的不是“我如何才能减少所有对查找表的缓存未命中?”,而是“是否有一种我从未听说过的完全不同的算法?”

答案可能是否定的,这没关系。

algorithm tradeoff shortest-path

5
推荐指数
1
解决办法
726
查看次数

标签 统计

algorithm ×1

shortest-path ×1

tradeoff ×1