![09f0fc8bcff89b9ed419ee622ded6b37.png](https://i-blog.csdnimg.cn/blog_migrate/c721a8df43f278d3eba8e29bc821c2c9.png)
今天看一篇论文《Tree-structured Data Regeneration with Network Coding in Distributed Storage Systems》,其中讲到了n个顶点的完全图(Complete Graph,CG)的生成树(Spanning Tree,ST)的数量为n^(n-2),比较好奇,在网上搜到了很多相关的证明,一种比较简单的证明方式是采用Prufer编码,因为长度为n-2的Prufer编码唯一对应了一个CG中的无根树(我的理解,无根树与生成树差不多,就是遍历完所有节点,但是没有回路)
但是,通过一个例子,我觉得不对,
![5dbe316f7afaeb94375e5329b6ce662a.png](https://i-blog.csdnimg.cn/blog_migrate/a3c1f484a9890650906bbb41b6920f93.png)
图片取自该论文,可以看成是4个顶点的完全图
上图,我们可以看出,|V|=4,|E|=6,按照n^(n-2)=4^2=16个生成树,但是通过6条边选3条边的组合公式:C(6,3)=20,我本来以为是不是某些组合不能构成一个ST,或者某些组合构成的ST是相同的。但是,我把20个组合都写下来,发现都是ST,且各不相同。
我没有觉得我发现了什么惊天秘密,所以,请问一下各位知乎的大佬:我哪里错了???
自我救赎:20个组合中,构成三角形的不就是回路么???是不是傻??我:...懂了...是。
突然想起一个剑桥博士秀秀说的话:读博的日常就是与自己对话,自问自答~
说得好有道理啊~