相同的树
两棵树都为空树------相同的树
其一为空树------不是相同的树
代码:
/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
typedef struct TreeNode TreeNode;
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 false;
}
//说明结构相同值相同
return isSameTree(p->left,q->left) && isSameTree(p->right,q->right);
}