给你两棵二叉树的根节点 p
和 q
,编写一个函数来检验这两棵树是否相同。
如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。
思路一:
bool isSameTree(struct TreeNode* p, struct TreeNode* q){
if(p == NULL && q == NULL){
return true;
}
if(p==NULL && q !=NULL){
return false;
}
if(p != NULL && q==NULL){
return false;
}
if(p->val == q->val){
return isSameTree(p->left , q->left) && isSameTree(p->right , q->right);
}
else
return false;
}
分析:
首先判断两个二叉树是否为空,再判断有值的情况,利用递归,若两个值相等则同时向左右子树继续进行判断文章来源:https://www.toymoban.com/news/detail-671983.html
总结:
本题考察二叉树判断,利用了bfs算法将两个二叉树值全部判断得到答案文章来源地址https://www.toymoban.com/news/detail-671983.html
到了这里,关于leetcode做题笔记100. 相同的树的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!