petgraph

グラフを扱うcrate

2022-09-03

#[test]
fn test_mst() {
    let g1 = make_g(5, &[(0, 1), (2, 0), (1, 2), (0, 3)]);
    let res = min_spanning_tree(&g1);
    let mst_g = Graph::<i32, ()>::from_elements(res);
    print_graph(&mst_g, NodeIndex::new(0));
    // 0
    // ├─ 3
    // └─ 1
    //    └─ 2
 
    let g2 = make_g(5, &[(0, 1), (1, 2), (2, 0), (0, 3)]);
    let res = min_spanning_tree(&g2);
    let mst_g = Graph::<i32, ()>::from_elements(res);
    print_graph(&mst_g, NodeIndex::new(0));
    // 0
    // ├─ 3
    // └─ 1
}
  • バグ?

Transclude of minimum-spanning-tree#^e2a162