二叉树OJ题(一)

简介: ✅每日一练:100. 相同的树 - 力扣(LeetCode)

d452612414244aabaa7e3de911fee885.png

题目的意思是俩棵树的结构不仅要相同,而且每个节点的值还要相同,如果满足上面2个条件,则成立!


解题思路:

从三个方面去考虑:

1.如果p,q都为空,那么一定相同;

2.如果p为空,q不为空,或者p不为空,q为空,那么一定不相同;

3.如果二者都不为空,那么需要判断根节点,如果根节点不相同,那么一定不相同,如果相同,我们需要比较左右子树的值和左右子树的结构;

代码:

publicbooleanisSameTree(TreeNodep, TreeNodeq) {
//如果p,q都为空,那么这2个树一定相同if (p==null&&q==null) {
returntrue;
        }
//如果q为空,p不为空,那么一定不相同,或者p为空,q不为空,那么一定不相同if (p!=null&&q==null||p==null&&q!=null) {
returnfalse;
        }
//如果p,q都不为空,那么要判断值,如果值不相同,那么一定不相同if (p.val!=q.val) {
returnfalse;
        }
//如果p,q都不为空,并且p,q的值相同,那么要判断p,q的左右子树的值,如果相同为真,反之;returnisSameTree(p.left, q.left) &&isSameTree(p.right, q.right);
    }

目录
相关文章
|
6月前
二叉树OJ题(1)
二叉树OJ题(1)
38 0
|
6月前
|
Java C++ Python
leetcode-654:最大二叉树
leetcode-654:最大二叉树
54 0
|
6月前
|
API
Leetcode-二叉树oj题
Leetcode-二叉树oj题
33 0
Leetcode-二叉树oj题
|
6月前
|
存储
二叉树相关OJ题
二叉树相关OJ题
|
6月前
LeetCode-二叉树OJ题
LeetCode-二叉树OJ题
36 0
|
6月前
二叉树OJ题目(2)
二叉树OJ题目(2)
33 0
|
11月前
LeetCode——OJ题之二叉树【上】
LeetCode——OJ题之二叉树【上】
48 1
|
6月前
|
API C语言
二叉树的OJ练习(一)
二叉树的OJ练习(一)
|
6月前
|
API
二叉树的OJ练习(二)
二叉树的OJ练习(二)
|
6月前
二叉树OJ题:LeetCode--144.二叉树的前序遍历
二叉树OJ题:LeetCode--144.二叉树的前序遍历
44 0