本文简要介绍
networkx.utils.rcm.cuthill_mckee_ordering
的用法。用法:
cuthill_mckee_ordering(G, heuristic=None)
生成图节点的排序(排列)以制作稀疏矩阵。
使用Cuthill-McKee启发式(基于广度优先搜索)[1]。
- G:图形
NetworkX 图
- heuristic:函数,可选
用于选择 RCM 算法的起始节点的函数。如果 None 使用来自 pseudo-peripheral 对的节点。可以提供一个用户定义的函数,它接受一个图形对象并返回一个节点。
- nodes:生成器
Cuthill-McKee 排序中的节点生成器。
参数:
返回:
注意:
带宽减少的最佳解决方案是NP-complete [2]。
参考:
- 1
E. Cuthill and J. McKee. Reducing the bandwidth of sparse symmetric matrices, In Proc. 24th Nat. Conf. ACM, pages 157-172, 1969. http://doi.acm.org/10.1145/800195.805928
- 2
Steven S. Skiena. 1997. The Algorithm Design Manual. Springer-Verlag New York, Inc., New York, NY, USA.
例子:
>>> from networkx.utils import cuthill_mckee_ordering >>> G = nx.path_graph(4) >>> rcm = list(cuthill_mckee_ordering(G)) >>> A = nx.adjacency_matrix(G, nodelist=rcm)
作为启发式函数的最小度数节点:
>>> def smallest_degree(G): ... return min(G, key=G.degree) >>> rcm = list(cuthill_mckee_ordering(G, heuristic=smallest_degree))
相关用法
- Python NetworkX cut_size用法及代码示例
- Python NetworkX connected_double_edge_swap用法及代码示例
- Python NetworkX categorical_edge_match用法及代码示例
- Python NetworkX cn_soundarajan_hopcroft用法及代码示例
- Python NetworkX complete_multipartite_graph用法及代码示例
- Python NetworkX clustering用法及代码示例
- Python NetworkX contracted_edge用法及代码示例
- Python NetworkX circulant_graph用法及代码示例
- Python NetworkX contracted_nodes用法及代码示例
- Python NetworkX communicability_exp用法及代码示例
- Python NetworkX categorical_node_match用法及代码示例
- Python NetworkX collaboration_weighted_projected_graph用法及代码示例
- Python NetworkX communicability用法及代码示例
- Python NetworkX capacity_scaling用法及代码示例
- Python NetworkX circular_layout用法及代码示例
- Python NetworkX connected_caveman_graph用法及代码示例
- Python NetworkX connected_components用法及代码示例
- Python NetworkX configuration_model用法及代码示例
- Python NetworkX caveman_graph用法及代码示例
- Python NetworkX chordal_graph_treewidth用法及代码示例
- Python NetworkX complete_to_chordal_graph用法及代码示例
- Python NetworkX communicability_betweenness_centrality用法及代码示例
- Python NetworkX closeness_vitality用法及代码示例
- Python NetworkX chordal_graph_cliques用法及代码示例
- Python NetworkX cytoscape_data用法及代码示例
注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.utils.rcm.cuthill_mckee_ordering。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。