Python输入序列
时间: 2024-02-16 14:03:15 浏览: 104
好的,我可以修改一下之前的代码,让其支持从键盘输入序列。下面是修改后的代码:
```python
class TreeNode(object):
def __init__(self, x):
self.val = x
self.left = None
self.right = None
def build_tree(inorder, postorder):
if not inorder:
return None
root_val = postorder.pop()
root = TreeNode(root_val)
root_idx = inorder.index(root_val)
root.right = build_tree(inorder[root_idx+1:], postorder)
root.left = build_tree(inorder[:root_idx], postorder)
return root
def preorder_traversal(root):
if not root:
return []
res = [root.val]
res += preorder_traversal(root.left)
res += preorder_traversal(root.right)
return res
inorder = list(map(int, input().split())) # 从键盘输入中序序列
postorder = list(map(int, input().split())) # 从键盘输入后序序列
root = build_tree(inorder, postorder)
print(preorder_traversal(root)) # 输出先序遍历序列
```
这样,你就可以从键盘输入中序序列和后序序列,并且得到对应的先序遍历序列了。
阅读全文