※ 引述《victoret (戏言~)》之铭言:
: 根据上篇讨论的内文和助教的推文...
: is_spanning_tree 需要顾虑到的东西有:
: 1. vertex 总数
: 过多:constant time
: 过少:要整个 tree 检查一遍
: 2. 结构是否为一个 spanning tree
: 有 cyclic、有没接到的 vertex:整个 tree 检查一遍
: 上面那两个功能要做出来,complexity 感觉都是可以接受的范围
: 不过...
这部分的功能很容易,你可以计算 Vertex 数目和 edge 数目,
|T(V)| == |V|
|T(V)| == |T(E)|+1
(可以采数学归纳法证明之:每增加一点,必为叶,必增加一边。)
之后再 traverse 一次看有没有 cycle 就可以判断了。
: 3. edge
: edge 的增加(ex:原图只有 v1