给出两个二叉树,请写出一个判断两个二叉树是否相等的函数。
判断两个二叉树相等的条件是:两个二叉树的结构相同,并且相同的节点上具有相同的值。
/**
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
class Solution {
public:
/**
*
* @param p TreeNode类
* @param q TreeNode类
* @return bool布尔型
*/
bool isSameTree(TreeNode* p, TreeNode* q) {
// write code here
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);
}
};

本文介绍了一个用于判断两棵二叉树是否相等的函数实现。该函数通过递归方式检查每一对对应节点是否具有相同的值及结构。
3109

被折叠的 条评论
为什么被折叠?



