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.
Subscribe to see which companies asked this question.
#include "iostream"
#include "vector"
using namespace std;
struct TreeNode{
int val;
TreeNode* left;
TreeNode* right;
TreeNode(int x):val(x),left(NULL),right(NULL){}
};
class Solution{
public:
bool isSameTree(TreeNode* p,TreeNode* q);
};
bool Solution::isSameTree(TreeNode* p,TreeNode* q)
{
if(p==NULL&&q==NULL)
return true;
if(p&&q)
{
if(p->val==q->val)
{
return isSameTree(p->left,q->left)&&isSameTree(p->right,q->right);
}
}
return false;
}
int main()
{
return 0;
}

本文介绍了一种检查两棵二叉树是否等价的方法。等价是指这两棵树不仅结构相同,而且每个节点的值也相同。通过递归比较两棵树的节点值及子树来实现这一判断。
7560

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



