首页 > 其他分享 >prufer序学习笔记

prufer序学习笔记

时间:2022-11-15 14:23:26浏览次数:53  
标签:个点 队列 笔记 学习 计数 序列 prufer 节点

知识总结

一种用于生成树计数的与树一一对应的数列。
一个长度为 \(n-2\) 的 Prufer 序列,唯一对应一棵n个点固定形态的无根树。

树变序列

  1. 找到编号最小的叶子 \(x\)
  2. 设与叶子 \(x\) 相连的点是 \(y\) ,则删掉 \(x\) ,并在 prufer 序列尾部加入一个数 \(y\)
  3. 重复 \(1,2\) 操作,直到整棵树只剩下两个节点,此时 prufer 序列长度为 \(n-2\)

不难发现,剩的两个节点里一定会有一个是n,根据这个性质可以考虑以 \(n\) 为根节点可以方便的解决问题。

序列变为树

  1. 把 prufer 序列里的数加入队列中,设队首为 \(u\)。
  2. 维护一个还没有连边的点集 \(S\) (初始状况下是 \(1~n\)) ,找到点集中编号最小的,并且是没有在队列之中出现的元素 \(v\)。
  3. 给 \(u, v\) 连上一条边,并且 \(S\) 中删掉 \(v\), 在队列之中弹出 \(u\)。
  4. 最后点集只剩 \(2\) 个点,互相连边。

prufer 序列转原树的过程就是每次跳出最小的一个叶子节点并且将其对应的度删除的过程,显然一一对应。

序列的一些性质

  1. 每个点出现次数 \(=\) 度数减一 (显然)
  2. Cayley定理:n个点的无向完全图的生成树的计数为 \(n ^ {n - 2}\) 即 \(n\) 个点有标号无根数计数
  3. \(n\) 个点,每个点度数为 \(d_i\) 的无根树个数为 \(\frac {(n-2)!}{\prod_{i=1}^{n}(d_i)!}\)。

标签:个点,队列,笔记,学习,计数,序列,prufer,节点
From: https://www.cnblogs.com/SouthernWay/p/16892283.html

相关文章

  • mysql详细学习笔记
    连接与断开服务器mysql-h地址-P端口-u用户名-p密码mysql>SHOWPROCESSLIST;显示哪些线程正在运行+----+------+-----------+------+---------+------+----......
  • UnoCss学习笔记
    配置通过npm安装Tailwind对于大多数项目(并利用Tailwind的自定义功能),您需要通过npm安装Tailwind及其依赖项。npminstall-Dtailwindcss@latestpostcss@lates......
  • 学习笔记
    圆方树圆方树能有效地把图论问题转换为树上问题,从而利用数据结构高效地维护信息。考虑对一个无向图建出它的圆方树,这棵圆方树上的点分为两种:圆点与方点。我们首先对于无......
  • 【工具推荐】关于《轻笔记》
    这是一款《轻笔记》工具,让瞬间的灵感(短文字、idea列表、图片、链接等)更容易被记录.https://wowule.cc/lightNotes1.创建轻笔记、轻笔记列表2.轻笔记的由来3.轻......
  • Struts2 学习笔记(马士兵)
    前言假如你的人生有理想,那么就一定要去追,不管你现在的理想在别人看来是多么的可笑,你也不用在乎,人生蹉跎几十年,如果......
  • 如何禁用笔记本自带键盘
    将笔记本自带键盘禁用之后,就可以把课本放在键盘上而不按键了搜索cmd,选择命令提示符,右键,以管理员身份运行(否则会无法访问),随后输入:scconfigi8042prtstart=disabled......
  • python笔记74- yaml 使用特殊符号| 解决字符串带换行的问题
    前言在yaml文件中通过字符串写一行,如果字符串需要换行的,可以使用yaml中的特殊符号|和>。管道符||这个控制符的作用是保留文本每一行尾部的换行符"\n",等效于|+。|+......
  • 深度学习工程基础
    欠拟合与过拟合欠拟合是指模型在训练集、验证集和测试集上均表现不佳的情况过拟合是指模型在训练集上表现很好,到了验证和测试阶段就大不如意了,即模型的泛化能力很差。解......
  • 初识Linux(九)------ 学习Shell Scripts
    基本上,shellscript有点像是早期的批处理文件,亦即是将一些指令汇整起来一次执行,但是Shellscript拥有更强大的功能,那就是他可以进行类似程序(program)的编写,并且不......
  • Linux-终端命令格式-笔记
    目标了解终端命令格式知道如何查阅终端命令帮助信息01.终端命令格式command[-options][parameter]说明:​​command​​:命令名,相应功能的英文单词或单词的缩写​​[-optio......