To the Top
File:  root - text - article - 2019 - 12 - count-number-of-unival-subtrees.txt.txt
Tags: 每日算法题, 算法, 数据结构, 面试题, Daily Interview Problem, Data Structures and Algorithms, Computer Programming, Python, | English | Home Page | Category: Computing | 165 Views, 14795 Search Bots | 135 Words

Subscribe to Feed Burner | Browse | Archive
Hi, here's your problem today. This problem was recently asked by Microsoft:

A unival tree is a tree where all the nodes have the same value. Given a binary tree, return the number of unival subtrees in the tree.

For example, the following tree should return 5:


0
/ \
1 0
/ \
1 0
/ \
1 1


The 5 trees are:
- The three single '1' leaf nodes. (+3)
- The single '0' leaf node. (+1)
- The [1, 1, 1] tree at the bottom. (+1)

Here's a starting point:


class Node(object):
def __init__(self, val):
self.val = val
self.left = None
self.right = None

def count_unival_subtrees(root):
# Fill this in.

a = Node(0)
a.left = Node(1)
a.right = Node(0)
a.right.left = Node(1)
a.right.right = Node(0)
a.right.left.left = Node(1)
a.right.left.right = Node(1)

print count_unival_subtrees(a)
# 5
Tags: 每日算法题, 算法, 数据结构, 面试题, Daily Interview Problem, Data Structures and Algorithms, Computer Programming, Python, | English | Home Page | Cateogry: Computing | 165 Views, 14795 Search Bots | 135 Words Subscribe to Feed Burner

Related Articles

  1. [Daily Problem] Angles of a Clock
  2. [Daily Problem] Add two numbers as a linked list
  3. Two-Sum
  4. Daily Interview Problem: Full Binary Tree
  5. Print a tree level-by-level, with line-breaks
  6. Daily Interview Puzzle: Ways to Traverse a Grid
  7. Algorithm Interview: Level Order Traversal of Binary Tree
  8. Algorithm Interview Question: H-Index
  9. Daily Interview Problem: Spiral Traversal of Grid
  10. Daily Interview Problem: Longest Substring With K Distinct Characters

Comments (0)

    Be the first one to comment this page !


Page Edited: May 11 2024 14:36:49 | RSS Subscription
How to Cook a Perfect Steak? | <meta name="robots" content="noindex, follow" />