代码拉取完成,页面将自动刷新
package zuo.chapter3;
/**
* @author keboom
* @date 2021/5/11
*/
public class T1ContainT2 {
public boolean contains(TreeNode t1, TreeNode t2) {
if (t2 == null) {
return true;
}
if (t1 == null) {
return false;
}
// 因为t1不是一开头就跟t2匹配,所以也需要contains递归去找
// 只要找到t1的子节点与t2相等的,则进行check递归,由于或运算只要有一个true,则结果为true
return check(t1, t2) || contains(t1.left, t2) || contains(t1.right, t2);
}
private boolean check(TreeNode h, TreeNode t2) {
if (t2 == null) {
return true;
}
// 此还可判断t1子节点是否与t2头结点相等呢!
if (h == null || h.value != t2.value) {
return false;
}
return check(h.left, t2.left) && check(h.right, t2.right);
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。