1、HashHashHashCRC32!MD5!SHA-1!Morec a ca ba b c a b ac a bO(NM)?a b c1pp2ab c1pp2求和pp2p3a1O(NM)?O(N+M)!qmodiXpMiXSpfSfMii )()(1-+=+qmod piSSfSleniiSlen)()(1)(=-abaacbbcabacp2pp2p2p2pppq3q3q3q2q2qqq2qp3p1p2p2pp3p41部分和?线段树!Sparse Table!分块!预处理!平衡树!=对每一个子树计算一个Hash值12341234123412341234 131=1417(mod 2081)14
2、17141712341234(mod 2081)(557)xor557)xor924 131=346141714173466868516 O(n log n)可以给出具体对应方案可以使用Hash表在O(1)时间内查询树串23 01001 0子树的顺序?字母序?按Hash值排序!f(u,v)表示以u为v的父亲节点时以v为根的子树的Hash值uv类似地,有根森林,甚至任意图的同构问题也是可以使用Hash函数解决的Hash信息量大不易比较方便高效地比较“概括”化繁为简正确性优美性有所舍弃?效率简洁扩展性有所收获!题目适合理想的算法自己Leaf*(p2+p+1)*q*(p+1)*q(Leaf*(p+1)*q*p+Leaf*(p3+p2+p+1)*q)*q的可能为=