- 2024-10-27【PTA】树的同构
题目描述给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。图1图2现给定两棵树,请你判断
- 2024-10-24两棵树问题的一种点分治做法
简述题面:你有两棵树,\(T_1\),\(T_2\),然后你需要对于每个点求出\(\min_{j\not=i}(dist(T_1,i,j)+dist(T_2,i,j))\)要求时间复杂度\(O(n\log^2n)\)或更优做法:考虑点分治,假如在\(T_1\)固定\(i,j\)一定要经过某个\(x\),然后把\(x\)作为分治点,那么实际上\(val[i,j]=
- 2024-10-23树的重心
什么是树的重心?树上选取一个点,使得最大的子树大小最小的点叫做重心。重心有很多优美的性质,求重心是容易的,不再阐述。1.以重心为树根时,最大的子树的大小不超过全树大小的一半,同时条件是充要的对于充分性:考虑调整法。不妨现在钦定一个重心\(u\)作为树根,有一个儿子\(v\)且
- 2024-08-01【大厂笔试】翻转、平衡、对称二叉树,最大深度、判断两棵树是否相等、另一棵树的子树
检查两棵树是否相同100.相同的树-力扣(LeetCode)思路解透两个根节点一个为空一个不为空的话,这两棵树就一定不一样了若两个跟节点都为空,则这两棵树一样当两个节点都不为空时:若两个根节点的值不相同,则这两棵树不一样若两个跟节点的值相同,则对左右两棵子树进行递归
- 2024-07-15树相关
路径求交给出两条路径\((a,b)\)和\((c,d)\),令\(\texttt{x1=LCA(a,c),x2=LCA(a,d),x3=LCA(b,c),x4=LCA(b,d)}\)取深度最大的两个记为\(p_1,p_2\)。若\(p_1\nep_2\),则\(p_1,p_2\)为路径交的两个端点。若\(p_1=p_2\),此时求出\(p_3=\texttt{LCA(a,b
- 2024-03-09树哈希
树哈希1.1定义1.1.1同构树我们定义,如果两颗有根树,交换其中节点的儿子后,两棵树形态一致,称这样的两棵树为同构树。树哈希能做的就是判断两棵树是否同构。1.1.2哈希方法树哈希十分灵活,也就是说你可以设计出你自己的哈希方式。但是显然,你设计的并不一定能满足正确性,可能被卡
- 2023-09-24树哈希学习笔记
我们用字符串哈希可以判断字符串相等,那么判断树同构呢?两棵树同构,当且仅当存在将其中一棵树的节点打乱的方案,使得打乱后两棵树完全相同。树哈希,就是把字符串哈希搬到树上来。对于两棵同构的有根树,其哈希值相同。下面介绍一种构造方式。\[f_i=\sum\limits_{x\inson(i)}f_xp_{|
- 2023-01-14树哈希
众所周知哈希就是玄学。树哈希其实就是去判断两棵树是否在某种意义下同构。对于无根树,钦定根节点为树的重心,根据题目意思哈希即可。但我不会哈希。贴一条柿子,可以按此
- 2023-01-01力扣100 相同的树
力扣100相同的树题目:给你两棵二叉树的根节点p和q,编写一个函数来检验这两棵树是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。示例1:
- 2022-11-102022.11.10
额,就是一个随笔而已,仿照\(\color{Red}{Cotsheep}\)那样,随便写点,权当水吧。AGC029C神妙的构造,报废的大脑。因为只用最后一位决定字典序,其他完全可以全用a填充。显
- 2022-10-26二叉树--判断两棵树是否一样
100. SameTreeEasy124942FavoriteShareGiventwobinarytrees,writeafunctiontocheckiftheyarethesameornot.Twobinarytreesareconsideredthesameif
- 2022-10-19[SHOI2005]树的双中心
考虑一个naive的\(O(N^2)\)做法:断开一条边,然后将树划分为两棵树,找出两棵树中的带权重心然后就做完了。考虑本题树高\(H\)不超过100。标算做法大概率是\(O(NH)\)的。
- 2022-09-02树的直径
树的直径给定一棵树,树的每条边都有一个权值,树中两点之间的距离定义为连接两点的路径上的边权之和。树上最远的两个节点之间的距离被称为树的直径,连接这两点的路径被称为树