二叉树(上)——“数据结构与算法”_认真学习的小雅兰.的博客-CSDN博客
二叉树链式结构的实现
二叉树链式结构的实现
使用前序比较!!!
二叉树里面不敢轻易使用断言(因为二叉树里面有NULL)
bool isSameTree(struct TreeNode* p, struct TreeNode* q){
//两个都为空
if(p==NULL&&q==NULL)
{
return true;
}
//一个为空,另一个不为空
if((p==NULL&&q!=NULL)||(p!=NULL&&q==NULL))
{
return false;
}
//根不相等
if(p->val!=q->val)
{
return false;
}
return isSameTree(p->left,q->left)
&&isSameTree(p->right,q->right);
}
bool isUnivalTree(struct TreeNode* root){
if(root==NULL)
{
return true;
}
if(root->left&&root->left->val!=root->val)
{
return false;
}
if(root->right&&root->right->val!=root->val)
{
return false;
}
return isUnivalTree(root->left)&&
isUnivalTree(root->right);
}
二叉树的源代码如下:
好啦,小雅兰今天的内容就到这里啦,还要继续加油呀!!!