php - Dijkstra 算法 - 如何计算距离?

标签 php algorithm dijkstra

我从网站上获得了 PHP 类:http://www.giswiki.org/wiki/Algorithmus_von_Dijkstra

在我看到的代码中:

// $points is an array in the following format: (router1,router2,distance-between-them)
$points = array(
    array(0,1,4),
    array(0,2,I),
    array(1,2,5),
    array(1,3,5),
    array(2,3,5),
    array(3,4,5),
    array(4,5,5),
    array(4,5,5),
    array(2,10,30),
    array(2,11,40),
    array(5,19,20),
    array(10,11,20),
    array(12,13,20),
);

获得“它们之间的距离”的数学是什么?我无法弄清楚这背后的数学原理。

我有 WSG84 坐标(GPS...例如:56.292157,-88.022461)。我做了数学运算以在 UTM 中获得相同的坐标(UTM 给出数字 X 和 Y,我得到 4142193、601021)。我得到了我的第一个和第二个值来填充我的数组。我不知道如何获得第三个值的距离。

有什么线索吗?

最佳答案

第三个值应使用 Great-circle_distance 计算得出算法。然后你可以使用dijkstra's algorithm .

关于php - Dijkstra 算法 - 如何计算距离?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12521231/

相关文章:

php - 基于标签权重的相似文章

algorithm - 有没有人有好的 Proper Case 算法

algorithm - 什么是桶或双桶数据结构?

prolog - 在序言中实现 Dijkstra 的最佳结构图

python - 是否可以修改此代码以使优先级队列在 O(logn) 时间内减少其 key ?

php - 在超链接中使用 onclick 打开具有 id 的 div

php - OPCache 已启用,但 php -i 显示它已禁用

php - 如何使用 php 在数据库中显示图像(名称),

java - 确定评估整数规则时的互斥

javascript - 理解使用对象作为散列的 JavaScript 算法的复杂性