To the Top
File:  root - text - article - 2019 - 11 - create-a-balanced-binary-search-tree.txt
Tags: 每日算法题, 算法, 数据结构, 面试题, Daily Interview Problem, Data Structures and Algorithms, Computer Programming, Python, | English | Home Page | Category: Computing | 175 Views, 16016 Search Bots | 111 Words

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

Given a sorted list of numbers, change it into a balanced binary search tree. You can assume there will be no duplicate numbers in the list.

Here's a starting point:


from collections import deque

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

def __str__(self):
# level-by-level pretty-printer
nodes = deque([self])
answer = ''
while len(nodes):
node = nodes.popleft()
if not node:
continue
answer += str(node.value)
nodes.append(node.left)
nodes.append(node.right)
return answer


def createBalancedBST(nums):
# Fill this in.

print createBalancedBST([1, 2, 3, 4, 5, 6, 7])
# 4261357
# 4
# / \
# 2 6
#/ \ / \
#1 3 5 7
Tags: 每日算法题, 算法, 数据结构, 面试题, Daily Interview Problem, Data Structures and Algorithms, Computer Programming, Python, | English | Home Page | Cateogry: Computing | 175 Views, 16016 Search Bots | 111 Words Subscribe to Feed Burner

Related Articles

  1. Daily Interview Problem: Maximum Profit From Stocks
  2. [Daily Problem] Add two numbers as a linked list
  3. Algorithm Interview Question: Nth Fibonacci Number
  4. CVE-2015-8874 - cPanel EasyApache Vulnerabilities
  5. Daily Interview Problem: Tree Serialization
  6. Number of Ways to Climb Stairs
  7. Plus One
  8. Generate All IP Addresses
  9. Daily Interview Problem: Merge Overlapping Intervals
  10. ImageMagick Vulnerabilities -  CVE-2016–3714

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="index, follow">