pgr_articulationPoints

pgr_articulationPoints - 返回无向图的连接点。

_images/boost-inside.jpeg

Boost 图内部

可用性

  • 版本3.0.0

    • 结果列更改:删除了 seq

    • 官方 函数

  • 版本2.5.0

    • 实验 函数

描述

那些属于多于一个双连通分量的顶点被称为关节点,或者等效地称为割点。关节点是指那些如果被移除,会增加图中连接分量数量的顶点。这个实现仅适用于无向图。

主要特点是:

  • 适用于 无向 图。

  • 返回值是有序的:

    • node 升序

  • 运行时间: \(O(V + E)\)

签名

pgr_articulationPoints(Edges SQL)
Returns set of (node)
OR EMPTY SET
示例:

图表的连接点

SELECT * FROM pgr_articulationPoints(
  'SELECT id, source, target, cost, reverse_cost FROM edges'
);
 node
------
    3
    6
    7
    8
(4 rows)

红色节点是关节点。

_images/ap_sampledata.png

参数

参数

类型

描述

Edges SQL

TEXT

Edges SQL 如下所述。

内部查询

Edges SQL

类型

默认

描述

id

ANY-INTEGER

边的标识符。

source

ANY-INTEGER

边的第一个端点顶点的标识符。

target

ANY-INTEGER

边的第二个端点顶点的标识符。

cost

ANY-NUMERICAL

边(source, target)的权重

reverse_cost

ANY-NUMERICAL

-1

边(target, source)的权重

  • 当为负时:边( target, source )不存在,因此它不是图的一部分。

其中:

ANY-INTEGER:

SMALLINT, INTEGER, BIGINT

ANY-NUMERICAL:

SMALLINT, INTEGER, BIGINT, REAL, FLOAT

结果列

Returns set of (node)

类型

描述

node

BIGINT

顶点的标识符。

另请参阅

索引和表格