LeetCode - 965. 单值二叉树(C语言,二叉树,配图)

二叉树每个节点都具有相同的值,我们就可以比较每个树的根节点与左右两个孩子节点的值是否相同,如果不同返回false,否则,返回true。

如果是叶子节点,不存在还孩子节点,则这个叶子节点为根的树是单值二叉树。

如果二叉树从根节点开始递归到叶节点,递归判断根节点与左右孩子节点是否相同。

cpp 复制代码
bool isUnivalTree(struct TreeNode* root) {
    if(root==NULL)
    {
        return true;
    }
    if(root->left !=NULL && root->left->val != root->val)
    {
        return false;
    }
    if(root->right !=NULL && root->right->val != root->val)
    {
        return false;
    }
    return isUnivalTree(root->right) && isUnivalTree(root->left);
}
相关推荐
biter down6 小时前
C 语言17:位操作符 & | ^:从二进制编码到大小端
c语言·开发语言
努力学算法的蒟蒻6 小时前
day11(11.11)——leetcode面试经典150
算法·leetcode·面试
永远都不秃头的程序员(互关)6 小时前
C 语言文件读写初探:打开数据之门 [特殊字符]
c语言
im_AMBER6 小时前
Leetcode 51
笔记·学习·算法·leetcode·深度优先
做怪小疯子6 小时前
LeetCode 热题 100——哈希——字母异位词分组
算法·leetcode·哈希算法
Einsail6 小时前
贪心算法,优先队列(大小根堆使用)
算法·贪心算法
小欣加油6 小时前
leetcode 474 一和零
c++·算法·leetcode·职场和发展·动态规划
一只老丸8 小时前
HOT100题打卡第36天——二分查找
数据结构·算法
陌路208 小时前
S19 哈希--6种哈希构造方法
算法·哈希算法
散峰而望8 小时前
C++入门(算法) - 习题
开发语言·c++·算法·github