100. Same Tree
Given two binary trees, write a function to check if they are equal or not.
Two binary trees are considered equal if they are structurally identical and the nodes have the same value.
解法
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
public class Solution {
public boolean isSameTree(TreeNode p, TreeNode q) {
if (p == null && q == null) {
return true;
}
if (p == null || q == null) {
return false;
}
if (p.val == q.val) {
boolean left = isSameTree(p.left, q.left);
boolean right = isSameTree(p.right, q.right);
return (left && right);
}
return false;
}
}
代码也可以直接写成
if (p.val == q.val) {
return isSameTree(p.left, q.left) && isSameTree(p.right, q.right);
}
性能更好一点
本文介绍了一种方法来检查两棵二叉树是否相同。通过递归比较两棵树的节点值及其左右子树,实现了高效准确的判断。文章提供了一个简洁的 Java 代码示例。
356

被折叠的 条评论
为什么被折叠?



