我得到了这棵二叉树
我想把它放在一个具有以下 struct 的元组中(Left_Subtree,key,right_subtree)(其中Left_Subtree和Right_Subtree本身就是元组. 我怎样才能以正确的方式做这件事呢?
class TreeNode:
def __init__(self, key):
self.key = key
self.left = None
self.right = None
tree_tuple = (((None, 6, None), 4,2,(9, 7, 10)), 1,
((13, 11, 14),8, (15, 12, 16), 5, 3))
print(len(tree_tuple))
def parse_tuple(data):
if isinstance(data, tuple) and len(data) == 3:
node = TreeNode(data[1])
node.left = parse_tuple(data[0])
node.right = parse_tuple(data[2])
elif data is None:
node = None
else:
node = TreeNode(data)
return node
tree = parse_tuple(tree_tuple)
print(tree.right.right.left.right.key)
我试过了,但显然我的元组 struct 甚至我的树本身有问题