关于树同构的问题
  • 板块学术版
  • 楼主user100566
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/12/2 11:34
  • 上次更新2024/12/2 18:13:40
查看原帖
关于树同构的问题
705702
user100566楼主2024/12/2 11:34

为了简化问题,下文主要考虑外向树,这意味着根是固定的,整棵树的哈希值等于根节点的哈希值。

考虑以下树哈希算法: hx=1+i=1sonxhsonx[i]×p[i]h_x=1+\sum_{i=1}^{|son_x|}h_{son_x[i]}\times p[i] 其中,hsonx[i]h_{son_x[i]} 不严格单调递增,代码实现中通过计算所有子树的哈希值后排序来实现,p[i]p[i] 表示第 ii 大的质数。代码实现中为了避免高精度会取模,但是下面的问题假设不取模

  1. 显然存在一些 aahxah_x \not= a 恒成立,即不存在任何一棵外向树的哈希值等于 aa,那么这样的 aa 有多少个?如果有无穷个,所有 aa 构成的集合是否是 N\mathbb{N}概率零测集,或者概率测度为多少?
  2. 这个哈希算法是否存在冲突?存在冲突当且仅当存在两棵不同构的外向树 T1,T2T_1, T_2,满足 hT1=hT2h_{T_1}=h_{T_2}
  3. 是否存在 O(n)O(n) 复杂度的算法:从无根树中选择一个节点 xx,对于所有同构的无根树,算法是确定的(即所有 xx 为根的外向树全部是同构的)。注意,确定的求重心算法可能求出两个节点。
2024/12/2 11:34
加载中...