本文主要是介绍力扣965单值二叉树的小细节,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
这一段的两个判断条件,一定要root->left!=NULL在前
如果root->val!=root->left->val在前,root->left为空的时候,就无法拿出root->left->val,在一个NULL的指针里拿不出val。
把root->left!=NULL放在前面,先判断左节点是否为空,如果为空,后面的条件就直接略过,整个表达式就为假,如果不为空,就走&&后面的表达式判断左节点的值与root是否相同。
bool isUnivalTree(struct TreeNode* root) {if(root==NULL){return true;}if(root->left!=NULL&&root->val!=root->left->val) //不能倒过来写。{return false;}if(root->right!=NULL&&root->val!=root->right->val){return false;}return isUnivalTree(root->left)&&isUnivalTree(root->right);}
这篇关于力扣965单值二叉树的小细节的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!