1. 程式人生 > >【leetcode】965. Univalued Binary Tree

【leetcode】965. Univalued Binary Tree

題目如下:

A binary tree is univalued if every node in the tree has the same value.

Return true if and only if the given tree is univalued.

 

Example 1:

Input: [1,1,1,1,1,null,1]
Output: true

Example 2:

Input: [2,2,2,5,2]
Output: false

 

Note:

  1. The number of nodes in the given tree will be in the range [1, 100].
  2. Each node's value will be an integer in the range [0, 99].

解題思路:送分題。

程式碼如下:

# Definition for a binary tree node.
# class TreeNode(object):
#     def __init__(self, x):
#         self.val = x
#         self.left = None
# self.right = None class Solution(object): def recursive(self,node,v): if node.val != v: return False r1 = r2 = True if node.left != None: r1 = self.recursive(node.left,v) if node.right != None: r2 = self.recursive(node.right,v)
return r1 and r2 def isUnivalTree(self, root): """ :type root: TreeNode :rtype: bool """ if root == None: return True return self.recursive(root,root.val)