题目描述:
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.
1 /**
2 * Definition for binary tree
3 * struct TreeNode {
4 * int val;
5 * TreeNode *left;
6 * TreeNode *right;
7 * TreeNode(int x) : val(x), left(NULL), right(NULL) {}
8 * };
9 */
代码:
1 class Solution {
2 public:
3 bool isSameTree(TreeNode *p, TreeNode *q) {
4 //为空的次数,层层递进
5 if(p == nullptr && q == nullptr)//都为空
6 return true;
7 if(p == nullptr || q == nullptr)//有一个为空
8 return false;
9 if(p->val != q->val)//都不为空
10 return false;
11 return isSameTree(p->left,q->left) && isSameTree(p->right,q->right);
12
13 }
14 };
原文:https://www.cnblogs.com/zjuhaohaoxuexi/p/11778981.html