/usr/share/doc/postgresql-9.5-pgrouting-doc/html/en/_sources/src/apsp_johnson/doc/index.txt is in postgresql-9.5-pgrouting-doc 2.1.0-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 | ..
****************************************************************************
pgRouting Manual
Copyright(c) pgRouting Contributors
This documentation is licensed under a Creative Commons Attribution-Share
Alike 3.0 License: http://creativecommons.org/licenses/by-sa/3.0/
****************************************************************************
.. _pgr_apsp_johnson:
pgr_apspJohnson - All Pairs Shortest Path, Johnson's Algorithm
===============================================================================
.. index::
single: pgr_apspJohnson(text)
module: apsp
Name
-------------------------------------------------------------------------------
``pgr_apspJohnson`` - Returns all costs for each pair of nodes in the graph.
Synopsis
-------------------------------------------------------------------------------
Johnson's algorithm is a way to find the shortest paths between all pairs of vertices in a sparse, edge weighted, directed graph. Returns a set of :ref:`pgr_costResult <type_cost_result>` (seq, id1, id2, cost) rows for every pair of nodes in the graph.
.. code-block:: sql
pgr_costResult[] pgr_apspJohnson(sql text);
Description
-------------------------------------------------------------------------------
:sql: a SQL query that should return the edges for the graph that will be analyzed:
.. code-block:: sql
SELECT source, target, cost FROM edge_table;
:source: ``int4`` identifier of the source vertex for this edge
:target: ``int4`` identifier of the target vertex for this edge
:cost: ``float8`` a positive value for the cost to traverse this edge
Returns set of :ref:`type_cost_result`:
:seq: row sequence
:id1: source node ID
:id2: target node ID
:cost: cost to traverse from ``id1`` to ``id2``
.. rubric:: History
* New in version 2.0.0
Examples
-------------------------------------------------------------------------------
.. code-block:: sql
SELECT seq, id1 AS from, id2 AS to, cost
FROM pgr_apspJohnson(
'SELECT source, target, cost FROM edge_table'
);
seq | from | to | cost
-----+------+----+------
0 | 1 | 1 | 0
1 | 1 | 2 | 1
2 | 1 | 5 | 2
3 | 1 | 6 | 3
[...]
The query uses the :ref:`sampledata` network.
See Also
-------------------------------------------------------------------------------
* :ref:`type_cost_result`
* :ref:`pgr_apsp_warshall`
* http://en.wikipedia.org/wiki/Johnson%27s_algorithm
|