一些关于prufer的结论

退役前写的东西

简单介绍

定义1(prufer)序列是无根树的一种数列。通过一棵阶为(n)的树转化来的(prufer)数列长度为(n-2)

构造1:无根树转(prufer)序列

序列初始为空
(1))找到编号最小的度数为(1)的点
(2))删除该点,同时在(prufer)序列中添加与该点唯一相邻的点的编号
(3))重复上述操作,直到树仅剩两个节点

推论1:度数为(p)的点在(prufer)序列中出现(p-1)

构造2(prufer)序列转无根树

初始点集(S={1,2,...,n})(n)为无根树的阶
(1))(prufer)序列最前面的元素(x),并将其从序列中删除
(2))(S)中找到最小的没有在(prufer)序列中出现的元素(y)
(3))((x,y))添加进(E),并在(S)中将两元素删除
(4))如果|S|=2,则将这两点的点对加入(E)

推论2:无根树与(prufer)序列呈双射关系

根据构造1,构造2容易一一对应起来

定理1((Caylay)):阶为(n)的树个数有(n^{n-2})
推论3:阶为(n)的树,给定每个点(i)的度数(deg_i),则树的个数为$$frac{(n-2)!}{prodlimits_{i=1}^n(deg_i-1)!}$$

应用

以下(n)默认为树的阶
(1)):强制(deg_1=k),树的个数为:(inom{n-2}{k-1}(n-1)^{n-k-1})

(2))(K_nsetminus e)的支撑树个数为((n-2)n^{n-3})

考虑出现(e)的个数
(e)出现在某个支撑树的概率为(frac{n-1}{inom{n}{2}}),则期望次数为(frac{n-1}{inom{n}{2}} imes n^{n-2}=2n^{n-3})
(n^{n-2}-2n^{n-3}=(n-2)n^{n-3})

(3)):设(T)为某个支撑树,有任意序列({x_1,x_2,...,x_n}),则有(prodlimits_{i=1}^n x_i(sumlimits_{i=1}^n x_i)^{n-2}=sumlimits_{T}prodlimits_{i=1}^n x_i^{deg_i})

即证((sumlimits_{i=1}^n x_i)^{n-2}=sumlimits_{T}prodlimits_{i=1}^n x_i^{deg_i-1})
将其展开,即为编号与(x)一一映射后的求值

(4))(n)个点,组成(m)棵树的个数为(mn^{n-m-1})(钦定树根)

(m)个点缩成(1)个点,且(x_1=m),其他点(x_i=1),然后代入(3))即可

(4)):求(K_n)中各点度数均不超过(3)的支撑树个数

(n_1,n_2,n_3)分别为度数(1,2,3)的个数
当确定(n_1,n_2,n_3)时,个数为(inom{n}{n_1,n_2,n_3}frac{(n-2)!}{2^{n_3}})
(n_1+2n_2+3n_3=2n-2),又度数为(2)的点在树上仅有一个儿子,易得(n_1=n_3+2,n_2=n-2n_3-2)
则个数为((n-2)!sum_{n_3=0}^{lfloorfrac n2 floor-1}2^{-n_3}frac{n!}{n_3!(n_3+2)!(n-2n_3-2)!};)
根据OEIS sequence A003692
((n+2)a_n = n(2n-1)a_{n-1} + (n-3)(n-1)na_{n-2};.)

(5))(K_{m,n})的支撑树个数为(m^{n-1}n^{m-1})

证明1:
考虑改化(prufer)序列的构造方式,依然选择叶子,但每次固定特定区域的叶子选择
(mle n),我们这样添加进来:
(underbrace{mathsf{N,N,dots,N}}_{n-m},underbrace{mathsf{N,M,N,Mdots,N,M}}_{2(m-1)})
结论:在(K_{m,n})的支撑树中,((mle n))(n)部分总有至少一个叶子节点((2n>n+m-1)
证明2
(x^T=x_1^{deg_1-1}x_2^{deg_2-1}cdots x_n^{deg_n-1})
(P_{n,m}=sumlimits_{T}x^T)(Q_{n,m}=(x_1+x_2+cdots+x_m)^{n-1}(x_{m+1}+cdots+x_{m+n})^{m-1})
我们可以证明(P_{n,m}=Q_{n,m})
(P_{m,n}^i=sum_{substack{T ext{ such that}\ v_i ext{ is a leaf}}} x^T),显然(P_{m,n}^i=P_{m,n}Big|_{x_i=0})
我们有如下转化

[left{; egin{array}{c} ext{spanning trees of $K_{m,n}$ where }\ ext{$v_i$ is a leaf, with neighbor $v_{m+j}$} end{array} ; ight}iff{; ext{spanning trees of $K_{m,n}setminus {v_i}$ };}]

(sum_{Tin LHS}x^T=x_{m+j}sum_{Tin RHS}x^T)
根据归纳我们能得到

[sum_{Tin RHS}x^T=(x_1+x_2+dots+x_m)^{n-1}(x_{m+1}+x_{m+2}+dots+x_{m+n})^{m-2}Big|_{x_{i}=0} ]

综合得到

[egin{aligned}P_{m,n}Big|_{x_i=0}&=P_{m,n}^i \&=sum_{substack{T ext{ such that}\ v_i ext{ is a leaf}}} x^T \&=sum_{j=1}^mhspace{-1em} sum_{substack{T ext{ such that}\ v_i ext{ is a leaf}\ ext{with neighbor $v_{m+j}$}}}hspace{-1em} x^T \&=sum_{j=1}^mx_{m+j}sum_{T ext{ spans }K_{m,n}setminus{v_i}}x^T \&=left(sum_{j=1}^mx_{m+j} ight)(x_1+x_2+dots+x_m)^{n-1}(x_{m+1}+x_{m+2}+dots+x_{m+n})^{m-2}Big|_{x_{i}=0} \&=(x_1+x_2+dots+x_m)^{n-1}(x_{m+1}+x_{m+2}+dots+x_{m+n})^{m-1}Big|_{x_{i}=0} \&= Q_{m,n}Big|_{x_{i}=0} end{aligned}]

由于(P_{m,n}Big|_{x_i=0}= Q_{m,n}Big|_{x_{i}=0})(x_i)(P_{m,n}-Q_{m,n})的因数。进一步的,(prod x_i)(P_{m,n}-Q_{m,n})的因数,所以阶数为(m+n)
根据(P_{m,n},Q_{m,n})的定义,其阶数是(n+m-2)
(P_{m,n}=Q_{m,n})

(6))(n)个点(n)条边的无向连通图的个数为(sum_{k=3}^{n}frac{n!n^{n-k-1}}{2(n-k)!})

n个点选k个点作为树根:(inom{n}{k} imes n^{n-k-1} imes k)
(n-k-1)个位置随便选,第(n-k)个位置的时候只剩下环和某个点,然后某个点选择环上一个点作为父亲
然后剩下算环的方案数就行
(sum_{k=3}^{n}inom{n}{k} imes n^{n-k-1} imes k imes frac{(k-1)!}{2})

(7))(K_n),给定一个(f)个点的树,包含其的支撑树个数为(n^{n-f-1}f)

将这棵树缩起来,枚举其与剩下((n-f))个点的度数,然后根据((1))
(sum_{k=1}^{n-f} inom{n-f-1}{k-1} (n-f)^{n-f-k} f^k)

(8))(2n)个点的数,(n)个叶子节点的生成树个数为({2nchoose n} {2n-2race n} n!)

证明1:
选择叶子集合,剩下(n)个点,由于不是叶子节点,必定出现在prufer序列中
证明2:
钦定有多少个点没有出现过容斥
(sum_{r=n}^{2n}(-1)^{r-n}cdot{r choose n}cdot{2n choose r}cdot(2n-r)^{2n-2})

(9))(K_n),怎么删掉两条边生成树个数最大

缩点:
(e_1,e_2)相邻
(sum_{i=0}^{n-4}3^{i+1}inom{n-4}{i}(n-3)^{n-4-i})
枚举出现次数(i),则有(i+1)条边
(e_1,e_2)不相邻
(sum_{i=0}^{n-4}inom{n-4}{i}2^{i+2}2^i(n-4)^{n-4-i})
(2^{i})为对(e_1,e_2)分类

原文地址:https://www.cnblogs.com/Grice/p/15506418.html