树同构判定
树同构判定
图同构与树同构
同的同构问题还没有有效算法。
树的同构本质上寻找不同树之间的双射关系。
通过对树编码,将树的同构问题转化为编码比较问题。
有根树的同构严格强于图同构关系。
如上,图同构的两张图转化成树,如果选取的根不同,则树不同构。
如何选取根?
概念定义:
-
dis(v1, v2)表示v1到v2点的距离
-
ex(v), 偏心率, ex(v)保存树中距离v最远的点的距离。
ex(v1) = max(dis(v1, vk)) , k = 1 → n
-
C(T), 成为中心,表示图中偏心率最小的点集合。
一种重要性质
对于一个树来说(对于图不成立),他的中心最多含有两个点,且若含有两个点,这两个点必定相邻。
所以,寻找一个树的中心,只需要迭代地删掉叶子节点,最后剩下的单个节点或者两个节点就是树的中心。
树的编码(有根树的同构判定)
将树转换字符串,但是通过比较字符串的字典序来比较两个编码的大小关系。
字典序比较规则:
编码方法
采用如上编码方案,两个树只有编码相同的时候才会同构。
reference
https://zh.coursera.org/lecture/discrete-mathematics-ch/you-gen-shu-tong-gou-de-pan-ding-NAxTd
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/34966.html