题目链接
实现代码
/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
bool isSameTree(struct TreeNode* p, struct TreeNode* q)
{
//两棵树都为空
if(p == NULL && q == NULL)
return true;
//一棵树为空,一棵树不为空
if(p == NULL || q == NULL)
return false;
//两棵树的根的值相同则比较他们的子树
if(p->val == q->val)
return isSameTree(p->left, q->left) && isSameTree(p->right, q->right);
else
return false;
}