文件: root - text - article - 2019 - 12 - reconstrunct-binary-tree-from-preorder-and-inorder-traversals.txt.txt
标签: 每日算法题, 算法, 数据结构, 面试题, Daily Interview Problem, Data Structures and Algorithms, Computer Programming, Python, | 英文 | 主页 | 类别: 计算机科学 | 358 次阅读, 20820 次搜索 | 164 个单词
| 浏览 | 博客存档
![定阅此目录的博客 定阅此目录的博客](/images/form/rss.gif)
标签: 每日算法题, 算法, 数据结构, 面试题, Daily Interview Problem, Data Structures and Algorithms, Computer Programming, Python, | 英文 | 主页 | 类别: 计算机科学 | 358 次阅读, 20820 次搜索 | 164 个单词
![定阅此目录的博客 定阅此目录的博客](/images/form/rss.gif)
Hi, here's your problem today. This problem was recently asked by Microsoft:
You are given the preorder and inorder traversals of a binary tree in the form of arrays. Write a function that reconstructs the tree represented by these traversals.
Example:
Preorder: [a, b, d, e, c, f, g]
Inorder: [d, b, e, a, f, c, g]
The tree that should be constructed from these traversals is:
Here's a start:
标签: 每日算法题, 算法, 数据结构, 面试题, Daily Interview Problem, Data Structures and Algorithms, Computer Programming, Python, | 英文 | 主页 | 类别: 计算机科学 | 358 次阅读, 20820 次搜索 | 164 个单词 You are given the preorder and inorder traversals of a binary tree in the form of arrays. Write a function that reconstructs the tree represented by these traversals.
Example:
Preorder: [a, b, d, e, c, f, g]
Inorder: [d, b, e, a, f, c, g]
The tree that should be constructed from these traversals is:
a
/ \
b c
/ \ / \
d e f g
Here's a start:
from collections import deque
class Node(object):
def __init__(self, val):
self.val = val
self.left = None
self.right = None
def __str__(self):
q = deque()
q.append(self)
result = ''
while len(q):
n = q.popleft()
result += n.val
if n.left:
q.append(n.left)
if n.right:
q.append(n.right)
return result
def reconstruct(preorder, inorder):
# Fill this in.
tree = reconstruct(['a', 'b', 'd', 'e', 'c', 'f', 'g'],
['d', 'b', 'e', 'a', 'f', 'c', 'g'])
print tree
# abcdefg
![定阅此目录的博客 定阅此目录的博客](/images/form/rss.gif)
猜您喜欢...
- [Daily Problem] Add two numbers as a linked list
- Making a Height Balanced Binary Search Tree
- Binary Tree Level with Minimum Sum
- Two-Sum
- Algorithm Interview: No Adjacent Repeating Characters
- Longest Substring Without Repeating Characters
- Linode Support Ticket 10029540 - Other - Important Notice Regarding Ubuntu 17.10 Image
- Sort a Partially Sorted List
- Compare Version Numbers
- Algorithm Interview: Determine If Linked List is Palindrome
©2006~2024 牛排过熟 - 0.01589 秒 - 1329.162 KB/s - 18 在线
内存: 495.66 KB
18:54:01 up 13 days, 18:33, 2 users, load average: 0.98, 0.86, 0.73 - 服务器 PHP 版本号: 7.4.33
牛排怎么做才好吃? | <meta name="机器人" content="不索引, 跟踪" />
![](/images/top.jpg)
18:54:01 up 13 days, 18:33, 2 users, load average: 0.98, 0.86, 0.73 - 服务器 PHP 版本号: 7.4.33
读写完全 - 一般 - 最小 - 表格 - 所有评论 - 统计
当前页暂时没有评论。