zoukankan      html  css  js  c++  java
  • 力扣(LeetCode)单值二叉树 个人题解

    如果二叉树每个节点都具有相同的值,那么该二叉树就是单值二叉树。

    只有给定的树是单值二叉树时,才返回 true;否则返回 false

    示例 1:

    输入:[1,1,1,1,1,null,1]
    输出:true
    

    示例 2:

    输入:[2,2,2,5,2]
    输出:false
    

    提示:

    1. 给定树的节点数范围是 [1, 100]
    2. 每个节点的值都是整数,范围为 [0, 99] 。

    这题很简单,只要完成遍历二叉树的动作就能解决问题。使用递归完成了前序遍历,每个非空节点的值进行比较是否相同。

    (很意外,这题的速度击败了70%的人,内存击败了100%的人)

    代码如下:

    class Solution {
        int num;
    
        public boolean isSame(TreeNode root) {
            if(root==null)
                return true;
            if (root.val != num)
                return false;
            else
                return isSame(root.left) && isSame(root.right);    
        }
    
        public boolean isUnivalTree(TreeNode root) {
            if (root == null)
                return false;
            num = root.val;
            return isSame(root);
        }
    }
  • 相关阅读:
    Word操作——通配符
    圆的拟合
    最优化案例整理
    机器学习数学基础知识备忘
    scikit-learn学习笔记
    Linux下安装scikit-learn
    ROS学习备忘
    [ROS]激光驱动安装
    CMake和Linux编程:find_package的使用
    [OpenCV]直线拟合
  • 原文地址:https://www.cnblogs.com/axiangcoding/p/10539506.html
Copyright © 2011-2022 走看看