当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python cugraph.traversal.sssp.sssp用法及代码示例


用法:

cugraph.traversal.sssp.sssp(G, source=None, method=None, directed=None, return_predecessors=None, unweighted=None, overwrite=None, indices=None)

计算从指定源到图中所有顶点的最短路径的距离和前驱。距离列将存储从源到每个顶点的距离。前驱列将每个顶点的前驱存储在最短路径中。无法到达的顶点将具有无穷大的距离,由数据类型的最大值表示,并且前驱设置为 -1。源顶点的前驱也设置为 -1。不支持具有负权重循环的图表。

参数

graphcugraph.Graph、networkx.Graph、CuPy 或 SciPy 稀疏矩阵图或

矩阵对象,它应该包含连接信息。边权重(如果存在)应该是单精度或双精度浮点值。

sourceint

源顶点的索引。

返回

返回值类型基于输入类型。如果 G 是一个 cugraph.Graph,
返回:
cudf.DataFrame
df[‘vertex’]

顶点编号

df[‘distance’]

给出到起始顶点的路径距离

df[‘predecessor’]

到达它的顶点

如果 G 是 networkx.Graph,则返回:

pandas.DataFrame 的内容与上述 cudf.DataFrame 相同。

如果 G 是 CuPy 或 SciPy 矩阵,则返回:

CuPy ndarrays(如果 CuPy 矩阵输入)或 Numpy ndarrays(如果 SciPy 矩阵输入)的 2 元组,表示:

距离:cupy 或 numpy ndarray

源和顶点之间最短距离的ndarray。

前身:cupy 或 numpy ndarray

来自源的路径上顶点的前驱的ndarray,可用于重建最短路径。

例子

>>> M = cudf.read_csv(datasets_path / 'karate.csv', delimiter=' ',
...                   dtype=['int32', 'int32', 'float32'], header=None)
>>> G = cugraph.Graph()
>>> G.from_cudf_edgelist(M, source='0', destination='1')
>>> distances = cugraph.sssp(G, 0)

相关用法


注:本文由纯净天空筛选整理自rapids.ai大神的英文原创作品 cugraph.traversal.sssp.sssp。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。