Prufer序列
P6086 【模板】Prüfer 序列
Prüfer
序列可以将树的计数问题转化为序列,而且可以和树实现
Prüfer
序列定义:对于一颗无根树,每次选择一个编号最小的叶子节点(定义为度为
二者是唯一对应的。
转换方法
Prüfer
转树
显然可以带
考虑维护一个变量
- 加入序列。
- 查看其父亲的编号是否小于它且成为叶子节点,如果小于加入其父亲,不断往上迭代。
由于每次循环 Prüfer
序列长度都会增加
树转 Prüfer
类似做法。
除 Prüfer
序列中出现的次数。
同上,遇到情况时的区别:
- 更新父亲。
- 同上2.。
code
本文作者:wscqwq
本文链接:https://www.cnblogs.com/wscqwq/p/17587185.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步