判断两棵二叉树是否相似 |
您所在的位置:网站首页 › 非空判定树是什么 › 判断两棵二叉树是否相似 |
二叉树T1和T2相似,指的是T1和T2都是空的二叉树或者都只有一个根结点;或T1的左子树和T2的左子树 是相似的并且T1的右子树和T2的右子树是相似的。 分析:采用递归的思想求解。若T1和T2都是空树,则相似;若有一个为空另一个不为空,则不相似;否则 递归地比较他们的左、右子树是否相似。 算法实现如下: public boolean similar(TreeNode t1, TreeNode t2) { // 采用递归算法判断两个二叉树是否相似 boolean leftS = false, rightS = false; if (t1 == null && t2 == null) // 两树皆空 return true; else if (t1 == null || t2 == null) // 只有一个树为空 return false; else // 递归地进行判断 { leftS = similar(t1.left, t2.left); rightS = similar(t1.right, t2.right); return leftS && rightS; } } |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |