思路

开始进入二叉树了,还是老样子直接开刷

image-20241118140404180

这种题目似乎递归都很好用,判断当时,正确往下继续

因此

  • 首先判断当前根结点,两者都为NULL相同,存一NULL不同,不为NULL判断是否相同
  • 之后判断左孩子和右孩子是否都相同即可

代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
bool isSameTree(struct TreeNode* p, struct TreeNode* q) {
if(p==NULL&&q==NULL){
return true;
}
else if(p==NULL||q==NULL){
return false;
}
else if(p->val!=q->val){
return false;
}
else{
return isSameTree(p->left,q->left)&&isSameTree(p->right,q->right);
}
}