递归求解
class TreeNode:
def __init__(self, x):
self.val = x
self.left = None
self.right = None
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param root TreeNode类
# @return int整型一维数组
#
class Solution:
def preorderTraversal(self , root: TreeNode):
# write code here
if root != None:
try:
list_val.append(root.val)
except:
list_val = [root.val]
left_list = self.preorderTraversal(root.left)
if left_list != None:
list_val.extend(left_list)
right_list = self.preorderTraversal(root.right)
if right_list != None:
list_val.extend(right_list)
return list_val
root = TreeNode(1)
root.right = TreeNode(2)
root.right.left = TreeNode(3)
print(Solution().preorderTraversal(root))