Leetcode—100
same Tree
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.
【题目大意】给定两棵树,判断是不是相同
【解法】同时便利两棵树,遇到树的结构或者节点值不一样,直接返回false
【AC代码】
/**
* 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;
}
else if(p == NULL && q != NULL){
return false;
}
else if(p != NULL && q == NULL){
return false;
}
else{
if(p ->val == q ->val){
return (isSameTree(p ->left, q ->left) && isSameTree(p ->right, q ->right));
}
else{
return false;
}
}
}